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