wait4(2) - wariua/manpages-ko GitHub Wiki
wait3, wait4 - νλ‘μΈμ€ μν λ³κ²½ κΈ°λ€λ¦¬κΈ°, BSD λ°©μ
#include <sys/types.h>
#include <sys/time.h>
#include <sys/resource.h>
#include <sys/wait.h>
pid_t wait3(int *wstatus, int options,
struct rusage *rusage);
pid_t wait4(pid_t pid, int *wstatus, int options,
struct rusage *rusage);
glibc κΈ°λ₯ νμΈ λ§€ν¬λ‘ μ건 (feature_test_macros(7) μ°Έκ³ ):
-
wait3()
: -
- glibc 2.19λΆν°:
_DEFAULT_SOURCE || _XOPEN_SOURCE >= 500
- glibc 2.19 λ° μ΄μ :
_BSD_SOURCE || _XOPEN_SOURCE >= 500
-
wait4()
: -
- glibc 2.19λΆν°:
_DEFAULT_SOURCE
- glibc 2.19 λ° μ΄μ :
_BSD_SOURCE
μ΄ ν¨μλ€μ λΉνμ€μ΄λ€. μλ‘ λ§λλ νλ‘κ·Έλ¨μμλ waitpid(2)λ waitid(2)λ₯Ό μ¬μ©νλ κ² λ°λμ§νλ€.
wait3()
λ° wait4()
μμ€ν
νΈμΆμ waitpid(2)μ λΉμ·νλ μΆκ°λ‘ rusage
κ° κ°λ¦¬ν€λ ꡬ쑰체μ μμμ λν μμ μ¬μ© μ 보λ₯Ό λ°ννλ€.
rusage
μΈμ μ¬μ©μ μ μΈνλ©΄ λ€μ wait3()
νΈμΆμ
wait3(wstatus, options, rusage);
λ€μκ³Ό λλ±νλ€.
waitpid(-1, wstatus, options);
λ§μ°¬κ°μ§λ‘ λ€μ wait4()
νΈμΆμ
wait4(pid, wstatus, options, rusage);
λ€μκ³Ό λλ±νλ€.
waitpid(pid, wstatus, options);
λ€μ λ§ν΄ wait3()
λ μ무 μμμ΄λ κΈ°λ€λ¦¬λ λ°λ©΄ wait4()
λ₯Ό μ°λ©΄ κΈ°λ€λ¦΄ νΉμ μμ λ΄μ§ μμλ€μ μ νν μ μλ€. λ μμΈν λ΄μ©μ wait(2)μ 보λΌ.
rusage
κ° NULLμ΄ μλλ©΄ κ·Έ μΈμκ° κ°λ¦¬ν€λ struct rusage
λ₯Ό μμμ λν μ¬μ©λ μ λ³΄λ‘ μ±μ°κ² λλ€. μμΈν λ΄μ©μ getrusage(2)λ₯Ό 보λΌ.
waitpid(2)μ κ°μ.
waitpid(2)μ κ°μ.
4.3BSD.
SUSv1μ wait3()
λͺ
μΈκ° ν¬ν¨λμλ€. SUSv2μ wait3()
κ° ν¬ν¨λμμ§λ§ LEGACYλ‘ νμλμλ€. SUSv3μμ μ κ±°λμλ€.
<sys/time.h>
λ₯Ό ν¬ν¨μν€λ κ²μ΄ μμ¦μ νμνμ§ μμ§λ§ μ΄μμ±μ λμ¬ μ€λ€. (μ€μ λ‘ <sys/resource.h>
μμ μ μνλ rusage
ꡬ쑰체μλ <sys/time.h>
μ μ μλΌ μλ struct timeval
νμ
νλλ€μ΄ μλ€.)
리λ
μ€μμ wait3()
λ wait4()
μμ€ν
νΈμΆ μμμ ꡬνν λΌμ΄λΈλ¬λ¦¬ ν¨μμ΄λ€.
fork(2), getrusage(2), sigaction(2), signal(2), wait(2), signal(7)
2018-04-30