Jak se nechat systemem zavolat kazdou pulsekundu

Jan Kasprzak kas na informatics.muni.cz
Čtvrtek Duben 27 14:37:08 CEST 2000


Jakub Dadak wrote:
:  Zkuste mi poradit Vasi metodu.
: 
int halfsleep() {
	struct timeval tv;
	tv.tv_sec = 0;
	tv.tv_usec = 500000;

	return select(0, NULL, NULL, NULL, &tv);
}

	Vraci nulu pokud je vse v poradku, -1 pokud doslo k chybe
(napriklad ze byl select prerusen signalem).

	Lze skalovat az do frekvence HZ (sysconf(_SC_CLK_TCK)), obvykle
100 Hz. Pro jemnejsi rozliseni je mozno pouzit napriklad /dev/rtc nebo tak
nejak. Ale to bude brat vic casu (I/O je pomale ...) a navic je to
linux-specificke.

-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/              ///
\You did not allow to drop the packet and machine tries to keep it. It does/
\\ not hang by the way, it simply works too hard to respond 8)8)    --ANK //


Další informace o konferenci Linux