sebevrazda ditete - fork proces

Robert Vojta robert na v0jta.net
Úterý Srpen 14 12:40:37 CEST 2001


> mam tu programatorsky orisek.
> Mam program, ktery v urcitou chvili vytvori podproces (forkem). Pak rodic
> hlida, co dela dite. Kdyz skonci dite drive, nez ho zabije rodic, tak se
> standartne ukonci. Ale pak mi po kazdem takovem procesu zbyde Zombie proces,
> kterych zbavim jen tak, ze zabiju i rodice. Nevi nekdo, jak zajistit, abych
> spolehlive ukoncil podproces a nezustavaly mi tam zombie?

  Ufff, Zombici, jak vznikaji? Viz archiv konference ...

  - rodic vytvori potomka
  - potomek se ukonci
  - rodic si nevyzvedne navratovy kod potomka

  A mame Zombika. Takze, bude musite precist navratovy kod ukonceneho
ditete a nebo zavolat v rodici ...

  signal(SIGCLD,SIG_IGN);

  a tim mu reknete, ze ma ignorovat navratove kody deti a tudiz zombici
vznikat nebudou. Jinak behem nekolika malo minut jsem nasel svuj prispevek
v archivu konference ...

          http://www.linux.cz/lists/archive/linux/114995.html

  Resume jak se zbavit zombiku?

  a) cist navratove kody ukoncenych deti (man 2 wait, waitpid, ...)
  b) ignorovat navratove kody potomku - signal(SIGCLD,SIG_IGN);

> Pozn. je to delany ve FreePascalu, ale asi jde jen o princip, o zbytek uz
> bych se snad postaral.

  FreePascal jsem nevidel, ale princip mate ...

                                                            --Robert V0jta

-- 
            _ 
           |-|  __        Robert Vojta (robert-at-v0jta-net)
           |=| [Ll]             http://www.v0jta.net/
           "^" ====`o
------------- další část ---------------
A non-text attachment was scrubbed...
Name: [žádný popis není k dispozici]
Type: application/pgp-signature
Size: 240 bytes
Desc: [žádný popis není k dispozici]
URL: <http://www.linux.cz/pipermail/linux/attachments/20010814/9c9b3a74/attachment.sig>


Další informace o konferenci Linux