WAIT
Section: ¸®´ª½º ÇÁ·Î±×·¡¸Ó ¸Å´º¾ó (2)
Updated: 1997³â 6¿ù 23ÀÏ
Index
Return to Main Contents
À̸§
wait, waitpid - ÇÁ·Î¼¼½º Á¾·á¸¦ ±â´Ù¸°´Ù.
»ç¿ë¹ý
#include <sys/types.h>
#include <sys/wait.h>
pid_t wait(int *status)
pid_t waitpid(pid_t pid, int *status, int options);
¼³¸í
wait
ÇÔ¼ö´Â ÀÚ½ÄÀÌ Á¾·áµÉ ¶§±îÁö, ¶Ç´Â ÇöÀç ÇÁ·Î¼¼½º¸¦ Á¾·á½ÃÅ°°Å³ª ½Ã±×³Î ó¸®
ÇÔ¼ö¸¦ È£ÃâÇÏ´Â ÇൿÀ» ÇÏ´Â ½ÅÈ£°¡ Àü´ÞµÉ ¶§±îÁö ÇöÀç ÇÁ·Î¼¼½ºÀÇ ½ÇÇàÀ»
ÀϽà ÁßÁö½ÃŲ´Ù.
¸¸ÀÏ ÀÚ½ÄÀÌ È£Ã⠽𣿡 ÀÌ¹Ì Á¾·áµÇ¾ú´Ù¸é(Á»ºñ ÇÁ·Î¼¼½º), ÇÔ¼ö´Â Áï½Ã ¸®ÅÏÇÑ´Ù.
ÀÚ½ÄÀÌ »ç¿ëÇÑ ½Ã½ºÅÛ ÀÚ¿øµéÀº ¸ðµÎ Ç®¾îÁø´Ù.
waitpid
ÇÔ¼ö´Â
pid
ÀÎÀÚ°¡ °¡¸®Å°´Â ÀÚ½ÄÀÌ Á¾·áµÉ ¶§ ±îÁö, ¶Ç´Â ÇöÀç ÇÁ·Î¼¼½º¸¦ Á¾·á½ÃÅ°°Å³ª ½Ã±×³Î
ó¸® ÇÔ¼ö¸¦ È£ÃâÇÏ´Â ÇൿÀ» ÇÏ´Â ½ÅÈ£°¡ Àü´ÞµÉ¶§±îÁö ÇöÀç ÇÁ·Î¼¼½ºÀÇ ½ÇÇàÀ»
ÀϽà ÁßÁö½ÃŲ´Ù.
¸¸ÀÏ
pid
·Î ÁöÁ¤µÈ ÀÚ½ÄÀÌ È£Ã⠽𣿡 ÀÌ¹Ì Á¾·áµÇ¾ú´Ù¸é(Á»ºñ ÇÁ·Î¼¼½º), ÇÔ¼ö´Â Áï½Ã
¸®ÅÏÇÑ´Ù.
ÀÚ½ÄÀÌ »ç¿ëÇÑ ½Ã½ºÅÛ ÀÚ¿øµéÀº ¸ðµÎ Ç®¾îÁø´Ù.
pid
°ªÀº ´ÙÀ½ Áß ÇϳªÀÌ´Ù:
- < -1
-
ÀÌ°ÍÀº ÇÁ·Î¼¼¼¼ ±×·ì ID°¡
pidÀÇ
Àý´ë °ª°ú °°Àº ¾î¶² ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ ±â´Ù¸®¶ó´Â ÀǹÌÀÌ´Ù.
- -1
-
ÀÌ°ÍÀº ¾î¶² ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ ±â´Ù¸®¶ó´Â ÀǹÌÀÌ´Ù; ÀÌ°ÍÀº
wait
¿¡¼ ³ªÅ¸³ °Í°ú °°Àº ÇൿÀ» ÇÑ´Ù.
- 0
-
ÀÌ°ÍÀº ÇÁ·Î¼¼½º ±×·ì ID°¡ È£Ãâ ÇÁ·Î¼¼½ºÀÇ ID¿Í °°Àº ¾î¶² ÀÚ½Ä ÇÁ·Î¼¼½º¸¦
±â´Ù¸®¶ó´Â ÀǹÌÀÌ´Ù.
- > 0
-
ÀÌ°ÍÀº ÇÁ·Î¼¼½º ID°¡
pidÀÇ
°ª°ú °°Àº ÀÚ½ÄÀ» ±â´Ù¸®¶ó´Â ÀǹÌÀÌ´Ù.
options
ÀÇ °ªÀº 0 À̰ųª ´ÙÀ½ »ó¼öÀÇ ¾î¶²°Í°ú OR ÀÌ´Ù.
- WNOHANG
-
ÀÌ°ÍÀº ¾î¶² Àڽĵµ Á¾·áµÇÁö ¾Ê¾Ò´Ù¸é Áï½Ã ¸®ÅÏÇ϶ó´Â ÀǹÌÀÌ´Ù.
- WUNTRACED
-
ÀÌ°ÍÀº ¸ØÃ߰ųª »óÅ°¡ º¸°íµÇÁö ¾ÊÀº ÀڽĵéÀ» À§ÇØ ¿ª½Ã ¸®ÅÏÇ϶ó´Â ÀǹÌÀÌ´Ù.
¸¸ÀÏ
status
°¡
NULLÀÌ
¾Æ´Ï¶ó¸é
wait
¶Ç´Â
waitpid
´Â
status°¡
°¡¸®Å°´Â À§Ä¡¿¡ »óÅ Á¤º¸¸¦ ÀúÀåÇÑ´Ù.
ÀÌ »óÅ´ ´ÙÀ½ ¸ÅÅ©·Îµé·Î Æò°¡µÈ´Ù.(ÀÌµé ¸ÅÅ©·Î´Â ÀÎÀڷνá stat ¹öÆÛ
(int)¸¦ °¡Áö°í ÀÖ´Ù. -- ¹öÆÛ¿¡ ´ëÇÑ Æ÷ÀÎÅÍ°¡ ¾Æ´Ï´Ù!)
- WIFEXITED(status)
-
ÀÚ½ÄÀÌ Á¤»óÀûÀ¸·Î Á¾·áµÇ¾ú´Ù¸é non-zero ÀÌ´Ù.
- WEXITSTATUS(status)
-
exit()
¸¦ È£ÃâÇϱâ À§ÇÑ ÀÎÀÚ³ª ÁÖ ÇÁ·Î±×·¥¿¡¼
return
¹®ÀåÀ» À§ÇÑ ÀÎÀÚ·Î½á ¼³Á¤µÇ°í Á¾·áµÈ ÀÚ½ÄÀÇ ¹Ýȯ ÄÚµåÀÇ ÃÖÇÏÀ§ 8ºñÆ®¸¦
Æò°¡ÇÑ´Ù.
ÀÌ ¸ÅÅ©·Î´Â
WIFEXITED
°¡ non-zero ¸¦ ¹ÝȯÇÒ ¶§¸¸ Æò°¡µÈ´Ù.
- WIFSIGNALED(status)
-
¸¸ÀÏ ÀÚ½Ä ÇÁ·Î¼¼½º°¡ ÀâÇôÁöÁö ¾ÊÀº ½ÅÈ£¶§¹®¿¡ Á¾·áµÇ¾ú´Ù¸é ÂüÀ» ¹ÝȯÇÑ´Ù.
- WTERMSIG(status)
-
ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ Á¾·áÇϵµ·Ï ¾ß±âÇÑ ½ÅÈ£ÀÇ ¼ýÀÚ¸¦ ¹ÝȯÇÑ´Ù.
ÀÌ ¸ÅÅ©·Î´Â ¸¸ÀÏ
WIFSIGNALED
°¡ non-zero ¸¦ ¹ÝȯÇÒ °æ¿ì¸¸ Æò°¡µÈ´Ù.
- WIFSTOPPED(status)
-
¹ÝȯÀÇ ¿øÀÎÀÌ µÈ ÀÚ½Ä ÇÁ·Î¼¼½º°¡ ÇöÀç Á¤ÁöµÇ¾î ÀÖ´Ù¸é ÂüÀ» ¹ÝȯÇÑ´Ù.;
ÀÌ°ÍÀº ÀÌ ÇÔ¼ö°¡
WUNTRACED¸¦
»ç¿ëÇßÀ» ¶§¸¸ °¡´ÉÇÏ´Ù.
- WSTOPSIG(status)
-
ÀÚ½ÄÀ» Á¤ÁöÇϵµ·Ï ¾ß±âÇÑ ½ÅÈ£ÀÇ ¼ýÀÚ¸¦ ¹ÝȯÇÑ´Ù.
ÀÌ ¸ÅÅ©·Î´Â
WIFSTOPPED
°¡ non-zero ¸¦ ¹ÝȯÇÒ °æ¿ì¸¸ Æò°¡µÈ´Ù.
¹Ýȯ°ª
Á¾·áµÈ ÀÚ½ÄÀÇ ÇÁ·Î¼¼½º ID´Â ¿¡·¯À϶§ -1 À̰ųª ¸¸ÀÏ
WNOHANG
ÀÌ »ç¿ëµÇ°í ¾î¶² Àڽĵµ ÀÌ¿ëÇÒ ¼ö ¾ø´Ù¸é 0À» ¹ÝȯÇÑ´Ù.
(°¢°¢ÀÇ °æ¿ì,
errno
´Â Àû´çÇÑ °ªÀ¸·Î ¼³Á¤µÈ´Ù.)
¿¡·¯
- ECHILD
-
¸¸ÀÏ
pid
·Î ÁöÁ¤µÈ ÇÁ·Î¼¼½º°¡ Á¸ÀçÇÏÁö ¾Ê°Å³ª È£Ãâ ÇÁ·Î¼¼½ºÀÇ ÀÚ½ÄÀÌ ¾Æ´Ò °æ¿ì
ÀÌ´Ù. (ÀÌ°ÍÀº SIGCHLD ¿¡ ´ëÇÑ ÇൿÀÌ SIG_IGN À¸·Î ¼³Á¤µÇ¾ú´Ù¸é ÀÚ½ÅÀÇ
ÀÚ½ÄÀ» À§ÇØ ÀϾ ¼ö ÀÖ´Ù.)
- EINVAL
-
options
ÀÎÀÚ°¡ À¯È¿ÇÏÁö ¾ÊÀ» °æ¿ìÀÌ´Ù.
- ERESTARTSYS
-
¸¸ÀÏ
WNOHANG
°¡ ¼³Á¤µÇÁö ¾Ê°í ½ÅÈ£°¡ ºÀ¼âµÇÁö ¾Ê¾Ò°Å³ª
SIGCHLD
°¡ ÀâÇûÀ» ¶§ÀÌ´Ù. ÀÌ ¿¡·¯´Â ½Ã½ºÅÛ ÄÝ¿¡¼ ¹ÝȯµÈ´Ù.
¶óÀ̺귯¸® ÀÎÅÍÆäÀ̽º´Â
ERESTARTSYS¸¦
¹ÝȯÇÒ ¶§ Çã¿ëµÇÁö ¾Ê´Â´Ù. ±×·¯³ª
EINTR´Â
¹ÝȯµÈ´Ù.
ÁÖÀÇ
´ÜÀÏ À¯´Ð½º ¸í¼¼¼´Â SA_NOCLDWAIT Ç÷¡±×°¡ ¼³Á¤µÇ¾î Àְųª SIGCHLD¿¡ ´ëÇÑ
ÇൿÀÌ SIG_IGN(±×·¯³ª POSIX¿¡¼´Â Çã¿ëµÇÁö ¾Ê´Â´Ù.)·Î ¼³Á¤µÇ¾î ÀÖÀ» °æ¿ì¿¡
ÀÌ Ç÷¡±×(¸®´ª½º¿¡¼´Â Á¸ÀçÇÏÁö ¾Ê´Â´Ù)¸¦ ±â¼úÇÑ´Ù.
±×¸®°í Á¾·áµÈ ÀڽĵéÀº Á»ºñ°¡ µÇÁö ¾ÊÀ¸¸ç
wait()
¶Ç´Â
waitpid()
ÇÔ¼öÀÇ È£ÃâÀº ¸ðµç ÀڽĵéÀÌ Á¾·áµÉ ¶§±îÁö ºÀ¼âµÉ °ÍÀ̸ç
errno
¸¦ ECHILDÀ¸·Î ¼³Á¤ÇÏ°í ½ÇÆÐÇÑ´Ù.
ȣȯ
SVr4, POSIX.1
°ü·Ã Ç׸ñ
signal(2),
wait4(2),
signal(7)
¹ø¿ª
Á¤°ÈÆ <skyeyes@soback.kornet.net> 2000³â 8¿ù 7ÀÏ
ÇÑ±Û Manpage ÇÁ·ÎÁ§Æ® (http://man.kldp.org) 2005³â 2¿ù 11ÀÏ
Index
- À̸§
-
- »ç¿ë¹ý
-
- ¼³¸í
-
- ¹Ýȯ°ª
-
- ¿¡·¯
-
- ÁÖÀÇ
-
- ȣȯ
-
- °ü·Ã Ç׸ñ
-
- ¹ø¿ª
-
This document was created by
man2html,
using the manual pages.
Time: 06:02:47 GMT, February 11, 2005