Jak nezombifikovat proces
Vladimir Michl
michlv na risc.upol.cz
Pátek Říjen 9 21:07:48 CEST 1998
On Thu, 8 Oct 1998, Tomas Vasko wrote:
> mno;
> on ked nejaky child konci parent obdrzi SIGCHLD. da sa to teda ohandlovat
> tak ze sa jednoducho nastavi sighandler na nejaku fciu kde sa
> vola waitpid(-1,NOHANG);
> ak sa obsluha nastavi obycajnym signal() tak funkcia accept bude prerusena a
> povie nieco v zmysle: accept: Interrupted system call. toto sa zrejme da obist
> nastavovanim handlera funkciou sigaction(), tusim je tam nejaky flag typu
> restartsystemcall.
Ja jsem to kdysi take pouzival. Pomoci asi sigaction, jsem nastavil, co
se ma volat pri prichodi SIGCHLD (bylo to pouze volani wait). Pokud
accept zrovna cekal, byl ukoncen s nejakou chybou (EAGAIN nebo ERESTART,
da se zjistit pomoci strace na binarku) chybu jsem testoval a pokud to
byla vyse uvedena opakoval jsem volani accept. Stratou pozadavku by
toto reseni trpet nemelo.
Vlada Michl
PS: Posledni dobou si zivot bez strace vubec nedovedu predstavit.
Clovek tim zjisti tolik veci!
**********************************************************************
* Name: Vladimir Michl Student of Palacky University *
* E-mail: Vladimir.Michl na upol.cz, MichlV na risc.upol.cz *
* Web: http://www.upol.cz/~michlv *
* Adress: U skoly 292 *
* Velky Tynec *
* 783 72 *
* Czech Republic *
**********************************************************************
Další informace o konferenci Linux