event 클래스
동시성 런타임을 명시적으로 인식하는 수동 다시 설정 이벤트입니다.
구문
class event;
멤버
공용 생성자
속성 | 설명 |
---|---|
~event 소멸자 | 이벤트를 삭제합니다. |
공용 메서드
이름 | 설명 |
---|---|
reset | 이벤트를 신호가 없는 상태로 다시 설정합니다. |
set | 이벤트에 신호를 전송합니다. |
wait | 이벤트가 신호를 받기를 기다립니다. |
wait_for_multiple | 여러 이벤트가 신호를 받기를 기다립니다. |
공용 상수
속성 | 설명 |
---|---|
timeout_infinite | 대기 시간이 초과되지 않아야 함을 나타내는 값입니다. |
설명
자세한 내용은 동기화 데이터 구조를 참조 하세요.
상속 계층 구조
event
요구 사항
헤더: concrt.h
네임스페이스: 동시성
이벤트
새 이벤트를 생성합니다.
_CRTIMP event();
설명
~이벤트
이벤트를 삭제합니다.
~event();
설명
소멸자가 실행될 때 이벤트를 기다리는 스레드가 없을 것으로 예상됩니다. 이벤트가 해당 이벤트를 계속 대기 중인 스레드와 함께 소멸할 수 있도록 허용하면 정의되지 않은 동작이 발생합니다.
reset
이벤트를 신호가 없는 상태로 다시 설정합니다.
void reset();
set
이벤트에 신호를 전송합니다.
void set();
설명
이벤트에 신호를 보내면 이벤트를 대기하고 있는 임의 수의 컨텍스트가 실행 가능하게 됩니다.
timeout_infinite
대기 시간이 초과되지 않아야 함을 나타내는 값입니다.
static const unsigned int timeout_infinite = COOPERATIVE_TIMEOUT_INFINITE;
wait
이벤트가 신호를 받기를 기다립니다.
size_t wait(unsigned int _Timeout = COOPERATIVE_TIMEOUT_INFINITE);
매개 변수
_타임 아웃
대기 시간이 초과되기 전의 시간(밀리초)을 나타냅니다. 이 값 COOPERATIVE_TIMEOUT_INFINITE
은 시간 제한이 없음을 의미합니다.
Return Value
대기가 충족되면 값 0
이 반환되고, 그렇지 않으면 이벤트가 신호를 받지 않고 대기 시간이 초과되었음을 나타내는 값 COOPERATIVE_WAIT_TIMEOUT
입니다.
Important
UWP(유니버설 Windows 플랫폼) 앱에서는 이 호출이 현재 스레드를 차단할 수 있고 앱이 응답하지 않을 수 있으므로 ASTA 스레드를 호출 wait
하지 마세요.
wait_for_multiple
여러 이벤트가 신호를 받기를 기다립니다.
static size_t __cdecl wait_for_multiple(
_In_reads_(count) event** _PPEvents,
size_t count,
bool _FWaitAll,
unsigned int _Timeout = COOPERATIVE_TIMEOUT_INFINITE);
매개 변수
_PPEvents
대기할 이벤트 배열입니다. 배열 내의 이벤트 수는 매개 변수로 count
표시됩니다.
count
매개 변수에 제공된 배열 내의 이벤트 수입니다 _PPEvents
.
_FWaitAll
값 true
으로 설정하면 매개 변수는 매개 변수에 제공된 배열 내의 _PPEvents
모든 이벤트가 대기를 충족하기 위해 신호를 받아야 한다고 지정합니다. 값 false
으로 설정하면 신호를 받게 되는 매개 변수에 제공된 배열 내의 _PPEvents
모든 이벤트가 대기를 충족하도록 지정합니다.
_타임 아웃
대기 시간이 초과되기 전의 시간(밀리초)을 나타냅니다. 이 값 COOPERATIVE_TIMEOUT_INFINITE
은 시간 제한이 없음을 의미합니다.
Return Value
대기가 충족된 경우 대기 조건을 충족하는 매개 변수에 _PPEvents
제공된 배열 내의 인덱스입니다. 그렇지 않으면 조건이 충족되지 않고 대기 시간이 초과되었음을 나타내는 값 COOPERATIVE_WAIT_TIMEOUT
입니다.
설명
모든 이벤트가 대기를 충족하도록 신호를 받아야 함을 나타내기 위해 매개 변수 _FWaitAll
를 값 true
으로 설정하면 함수에서 반환하는 인덱스는 값 COOPERATIVE_WAIT_TIMEOUT
이 아니라는 사실 외에 특별한 의미를 갖지 않습니다.
Important
UWP(유니버설 Windows 플랫폼) 앱에서는 이 호출이 현재 스레드를 차단할 수 있고 앱이 응답하지 않을 수 있으므로 ASTA 스레드를 호출 wait_for_multiple
하지 마세요.