WaitForMultipleObjects

2015. 4. 10. 19:20

지정된 하나 또는 모든 객체의 시간 제한 간격이 경과 할때까지 또는 신호 상태로 전활될 때까지 대기한다.

* 이 함수는 다음 객체들에 대해 대기 가능 하다

- Change notification

- Console input

- Event

- Memory resource notification

- Mutex

- Process

- Semaphore

- Thread

- Waitable timer


- 출처 : MSDN


  • nCount

- 대기 하려는 객체의 수를 설정한다.

- 최대 객체 수는 MAXIMUM_WAIT_OBJECTS(64)이다.

- 이 파라메터 값은 0이 될 수 없다.


  • lpHandles

- 대기 하려는 객체들에 대한 핸들을 담고 있는 배열의 시작 주소를 설정한다.

- 핸들은 SYNCHRONIZE 접근 권한이 설정되어 있어야 한다.


  • bWaitAll

- TRUE 설정 시 대기하는 모든 객체의 종료 또는 시그널 상태로 전활될 때 반환된다.

- FALSE 설정 시 대기하는 객체들 중 어느 하나의 객체 종료 또는 시그널 상태로 전환될 때 반환된다.


  • dwMilliseconds

- 밀리 초 단위의 대기 시간 간격을 설정한다.

- 0을 설정 시 바로 반환되며, 0이 아닌 시간을 입력 했을 시 지정한 시간만큼을 대기한다.

- 값을 INFINITE로 설정 시 지정 객체의 종료 또는 시그널 상태로 전환될 때 반환된다.


Return value : 성공 시 WAIT_ABANDONED_0~nCount-1(0x00000080L+nCount-1), WAIT_OBJECT_0~nCount-1(0x00000000L+nCount-1), WAIT_TIMEOUT(0x00000102L)를 반환하고, 실패 시 WAIT_FAILED(0xFFFFFFFF)를 반환한다.

 - WAIT_ABANDONED : 뮤텍스 객체 사용 시 발생

 - WAIT_OBJECT_0 : 대기 하고 있는 객체의 종료 또는 시그널 상태로 전환 시 발생

 - WAIT_TIMEOUT : 대기 시간 초과 시 발생


Header : WinBase.h(include Windows.h)


DLL : Kernel32.dll


'Win32 API' 카테고리의 다른 글

WSACleanup  (0) 2015.04.13
WSAStartup  (0) 2015.04.13
WaitForSingleObject  (0) 2015.04.10
inet_ntoa  (0) 2015.04.10
inet_addr  (0) 2015.04.10

+ Recent posts