Aha
ichere, waitpid - echere usoro nkwụsị
Nkọwapụta
#nyịme
#nyịme
pid_t echere (int * ọnọdụ );
pid_t waitpid (pid_t pid , int * ọnọdụ , int nhọrọ );
Nkọwa
Ọrụ echere kwụsịtụrụ usoro nke usoro a ruo mgbe nwatakịrị agafeela, ma ọ bụ ruo mgbe a ga-enyefe ihe mgbaàmà nke ọrụ ya bụ ịkwụsị usoro ugbu a ma ọ bụ kpọọ ọrụ arụmọrụ. Ọ bụrụ na nwatakịrị emetụlarị n'oge oku (a na-akpọ "zombie" usoro), ọrụ ahụ laghachi ozugbo. Enwere ike ịmepụta ihe ọ bụla usoro ihe eji akụnụba.
Ọrụ nchechi kwụsịtụrụ usoro nke usoro a ruo mgbe nwatakịrị dị ka akọwapụtara site na arụmụka pid na-apụ, ma ọ bụ ruo mgbe a ga-agbasite mgbaàmà ọrụ ya iji kwụsị usoro ugbu a ma ọ bụ ịkpọ ọrụ arụmọrụ. Ọ bụrụ na nwatakịrị dị ka rịọrọ site na pid agafeworị site na oge oku (usoro "zombie"), ọrụ ahụ laghachi ozugbo. Enwere ike ịmepụta ihe ọ bụla usoro ihe eji akụnụba.
Uru nke pid nwere ike ịbụ otu n'ime:
<-1
nke pụtara ichere maka usoro nwatakịrị ọ bụla nchịkọta otu ID dị ka ọnụ ahịa zuru oke nke pid .
-1
nke pụtara ichere maka usoro nwata ọ bụla; nke a bụ otu omume ahụ nke na- echere ngosi.
0
nke pụtara ichere maka usoro nwatakịrị ọ bụla nchịkọta otu ID dị ka nke usoro ịkpọ oku.
> 0
nke pụtara ichere maka nwatakịrị nke nhazi usoro ya hà nhata.
Uru nke nhọrọ bụ OR nke efu ma ọ bụ karịa nke njigide ndị a:
WNOHANG
nke pụtara ịlọghachi ozugbo ma ọ bụrụ na nwatakịrị adịghị apụ.
WUNTRACED
nke pụtara ịlọghachite maka ụmụaka ndị a kwụsịrị, na ọkwa ha ekwughị.
(Maka Linux naanị nhọrọ, lee n'okpuru.)
Ọ bụrụ na ọnọdụ abụghị NULL , chere ma ọ bụ echere ọnọdụ ọnọdụ ụlọ ahịa na ebe a na-ezo aka site na ọnọdụ .
A ga-atụle ọnọdụ a na macro na-esonụ (macros ndị a na-etinye ihe ntanetịime (ihe int ) dịka esemokwu - ọ bụghị onye na-eme ka a na-eche banyere ya!):
Ebube ( ọnọdụ )
abụghị nke efu ma ọ bụrụ na nwatakịrị ahụ na-apụkarị.
WEXITSTATUS ( ọnọdụ )
na-enyocha akara asatọ nke koodu nlọghachi nke nwatakịrị ahụ nke kwụsịrị, bụ nke nwere ike ịtọ dị ka arụmụka na oku iji pụọ () ma ọ bụ dịka arụmụka maka nkwupụta nzaghachi na usoro mmemme ahụ. Nke a nwere ike naanị ịtụle ma ọ bụrụ na WIFEXITED laghachiri na-abụghị efu.
Ebube ( ọnọdụ )
ga-alaghachi ma ọ bụrụ na nwatakịrị ahụ na-apụ na ya n'ihi ụda nke a naghị ejide.
WTERMSIG ( ọnọdụ )
weghachite nọmba nke mgbaàmà nke mere ka nwa ahụ kwụsị ọrụ. A ga-enyocha igwe a naanị ma ọ bụrụ na WIFSIGNALED laghachiri na-abụghị efu.
WIFSTOPPED ( ọnọdụ )
ga-alaghachi ma ọ bụrụ na nwata ahụ nke mere ka nlọghachi ahụ kwụsịrị ugbu a; nke a ga - ekwe omume ma ọ bụrụ na a na - akpọ oku site na iji WUNTRACED .
WSTOPSIG ( ọnọdụ )
weghachite nọmba nke mgbaàmà nke mere ka nwata kwụsị. A pụrụ inyocha igwe a naanị ma ọ bụrụ na WIFSTOPPED laghachiri na-abụghị efu.
Ụfọdụ nsụgharị nke Unix (wdg. Linux, Solaris, ma ọ bụghị AIX, SunOS) kọwapụtara WCOREDUMP Mac ( ọnọdụ ) iji nwalee ma usoro nwatakịrị a na-atụfu isi. Naanị jiri nke a ejiri na #ifdef WCOREDUMP ... #endif.
Ighaghachi uru
Ihe nhazi nke nwatakiri ahu nke bughariri, ma o bu ihe efu ma oburu na ejiri WNOHANG ma nwatakiri enweghi, ma obu -1 na njehie (nke ikpehiere ya na uru bara uru).
Njehie
ECHILD
ma ọ bụrụ na usoro ahụ akọwapụtara na pid adịghị adị ma ọ bụ na ọ bụghị nwata nke usoro oku. (Nke a nwere ike ime maka nwa nke ya ma ọ bụrụ na arụ ọrụ maka SIGCHLD ka edepụtara na SIG_IGN. Leekwa mpaghara mpaghara LINUX NOTES banyere eri.)
EINVAL
ma ọ bụrụ na arụmụka nhọrọ adịghị mma.
EBIRI
ma ọ bụrụ na WNOHANG esetịbeghị ma ọ bụ sistema a na-akpọghị akpọ ma ọ bụ SIGCHLD jidere.