waitpid()의 3번째 인자에 관해..
글쓴이: firia2000 / 작성시간: 일, 2008/11/09 - 7:24오후
int status;
waitpid(-1,&status,WNOHANG | WUNTRACED);
라고 호출하면 어떤 의미가 되는건가요?
헤더파일을 살펴보니 WNOHANG은 1이고 WUNTRACED는 2 던데
disassemble 하여 코드를 살펴보니 인자로 3이 넘어가는군요..
| 가 비트연산이라는 것은 알고 있지만 인자를 저런식으로 주면 어떤 의미가 있는건가요?
WNOHANG 이나 WUNTRACED 하나만 인자로 줬을때와는 다른 동작을 하네요 ;ㅁ;
Forums:
man 페이지를 보세요.
man waitpid하니까 다음과 같은 설명이나오는군요.
WNOHANG:
return immediately if no child has exited.
WUNTRACED:
also return if a child has stopped (but not traced via ptrace(2)). Status for traced children which have stopped is provided even if this option is not specified.
언젠가 올라왔던
언젠가 올라왔던 유먼데...
"지구상엔 10종류의 사람이 있다. 이진수를 이해하는 사람과 그렇지 못한 사람"
이것만 이해하셔도 궁금증이 풀릴 것 같습니다.
십진수 1,2,3 으로 따지면 골치 좀 아픕니다.
OTL
비트 플래그
비트 플래그 입니다.
십진수 1,2,3이 아니라 바이너리 값으로 보면 이해가 되실듯.
(칸내림..ㅠ_ㅠ)
거꾸로 셋팅되어 있는지 확인할때는 and 연산자를 사용하면 되죠
댓글 달기