Odblokovani procesu

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Čtvrtek Květen 11 20:17:38 CEST 2000


On Thu, 11 May 2000, Jaroslav Honsa wrote:

> Jenze mne se tato funkce nevrati nikdy a alarm() s tim nic neudela,
> respektive ani nevim, jestli vubec neco udela. Rozumim tomu dobre, ze
> ma alarm zrusit blokovani funkce recvfrom a pak se dela obsluha
> signal(SIGALRM, ...)?

alarm() udela to, ze za stanoveny pocet sekund (je-li zadano nenulove
cislo, ze ano), dostane proces SIGALRM. Pokud jeho ovladac nema nastaveno
SA_RESTART (viz sigaction(2)), tak se LIBOVOLNY probihajici syscall
prerusi s chybou EINTR. Pokud Vam to nefunguje, pak asi delate neco
spatne.


On Thu, 11 May 2000, Jaroslav Honsa wrote:

> No, ja jsem to puvodne mel pres TCP, ale kolegovi se to nelibilo, ze to je
> s kanonem na vrabce - ty zpravy jsou 120B dlouhe. Prece jen domlouvat
> vsechny parametry spojeni kazdou sekundu a tech klientu muze byt vic ...,
> UDP je asi "lacinejsi", ale zase blokuje, aspon u mne :-(

Taky muzete nechat to spojeni celou dobu otevrene. :)
(BTW: DNS takovy trik nemuze pouzit, protoze je to vicemene komunikace
kazdy klient (resp. kazda cache) s kazdym nameserverem.)

--Pavel Kankovsky aka Peak  [ Boycott Microsoft--http://www.vcnet.com/bms ]
"Resistance is futile. Open your source code and prepare for assimilation."



Další informace o konferenci Linux