čas nebo čítač... nezávislý na systémových hodinách   zodpovězená otázka

VB.NET

Zdravím!

Ve VB bych se potřeboval dostat k času od spuštění windows, nebo cokoli co by běželo, bylo přesný na milisekundy a nebylo závislé na systémových hodinách...

Dělám totiž stopky a (pro vykreslování a výsledný výpočet času) používám Now a následný rozdíl... a když v průběhu měření změníte čas, aktualizujete čas nebo nedejbože měříte v době změny letního/zimního času, tak jste s přesností v...

Googlil jsem, našel jsem jak bych to mohl udělat v UNIXu, ale win nic :-D

Předem díky!

nahlásit spamnahlásit spam 0 odpovědětodpovědět

http://www.vbnet.cz/forum-tema--2483-nic...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Když jsem použil System.Diagnostics.Stopwatch tak jsem měření zbavil závislosti na systémovém čase... super!

...ale když jsem v průběhu měření hybernoval, uspal počítač, tak po zapnutí byl čas stopek větší než by měl být... sice jedou, ale rychleji v hybernaci neco spánku :-(

Když jsem koukal třeba na stav síťového připojení a jeho "Duration" (v dialogu windowsů) tak tam byl čas i po hybernaci nebo spánku počítače správný... nevíte jak se dostat k tomu, s čím pracuje stav síťového připojení?? :-D

...ona zase ta přesnost na milisekundy životně důležitá není... jen bych potřeboval aby to milisekundy ukazovalo...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Počet milisekund od startu systému vrací Environment.TickCount. Ale pozor, po 25 dnech běhu systému přeteče a je to k ničemu. Její přesnost je asi 20ms.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Díky!! ..toto jsem hledal ;-)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Pokud by tedy pro stopky nevadil maximální limit 25 dní (od doby spuštění systému!) a poměrně velká nepřesnost, potom by stačilo v okamžiku spuštění stopek uložit aktuální Environment.TickCount (t0) a v okamžiku požadavku na aktualizaci UI (Timer) nebo zastavení stopek odečíst od aktuálního Environment.TickCount t0, z této hodnoty vytvořit TimeSpan kde už je k dispozici TotalMilliseconds.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback