Cekani v C-cku.
Jan Kasprzak
kas na informatics.muni.cz
Pondělí Únor 2 13:12:17 CET 1998
mao pise:
: > Zdravim !
: > Kterak v C-cku nastavim cekani na vetsi presnost ?
: > (sleep(3) funguje jen v sekundach...)
: > Roman
: man gettimeofday
:
: a je to.
Tohle samozrejme _ne_! Pokud jde o cekani (tedy aby mel procesor
moznost zatim pracovat na jinem procesu), nemuzete cekat zpusobem
while(!(tv.tv_usec>neco && tv.tv_sec>neco_jineho)) gettimeofday(&tv);
Spravne se ceka pomoci usleep(), coz ma rozliseni rovno
sysconf(_SC_CLK_TCK), na Linux/i386 10ms. Mensi casovy usek je mozno
obslouzit pomoci nanosleep(), coz je Linuxove specifikum a je to
zase busy-wait (Spatna Vec(tm)). Dalsi moznost je zkompilovat si
do jadra driver Real-Time clock (/dev/rtc) a pouzit cteni /dev/rtc
- zablokuje proces na predem danou dobu.
-Yenya
--
\ Jan "Yenya" Kasprzak <kas at fi.muni.cz> http://www.fi.muni.cz/~kas/
\\ PGP: finger kas at aisa.fi.muni.cz 0D99A7FB206605D7 8B35FCDE05B18A5E //
\\\ Czech Linux Homepage: http://www.linux.cz/ ///
|| I find that the algol60 interpreter, teco and jclsh (ibm JCL emulator ||
|| shell) are very good for teaching people that computing has moved on. ||
|| -- Alan Cox in redhat-devel ||
Další informace o konferenci Linux