BredyTo co uvádíš jako nejsprávnější se mi zdá taky nejsprávnější. Chtěl jsem to tak nějak udělat, ale nepřišel jsem na to, jak zjistit čas nečinných procesů. Tak díky.
GetTickCount má větší granularitu než ProcessTimes (to má být ve stovkách nanosekund).
Ten sleep(100) jsem tam dal jen pro "zjednodušení", ve skutečnosti tam mám timer tikající po asi 100ms. Ale to je jedno, chtěl jsem chytit špičky vytížení CPU do grafu a celkem se to povedlo - škůdce byl odhalen a napraven.
Ještě ke QueryPerformanceCounteru: Před časem jsem psal program ve kterém jsem potřeboval hodiny (opravdu hodiny, ne jen měření nějakých krátkých úseků) s rozlišením alespoň 1/20000 tak jsem je udělal pomocí QPC. Pochopitelně se rozcházejí se systémovými hodinami. Tudíž jsem tam doplnil sledování průměrné odchylky a synchronizaci s hodinami a opravný koeficient (když zjistím moc velkou odyhcylku, o polovinu to doženu opravou offsetu a o polovinu opravou koeficientu), který by měl vyjadřovat o kolik se to relativně rozchází. Běží to na dvou pc. Na jednom se synchronizuje přibližně 3x častěji než na druhém (je to cca 1 za týden). Ten koeficient konverguje k něčemu jako 1E-5. Až budu mít možnost se podívat na program zjistím to přesněji, běží už tak 4 měsíce, tak by mohl být výsledek celkem zajímavý. |