2012-06-04 2 views
0

이벤트가 설정 될 때 창 메시지를 생성하는 방법이 있습니까? 중첩 된 I/O 작업을 설정하여 차단하지는 않지만 상태를 폴링하지 않으려합니다. 스레드를 사용할 수는 있지만이 작업에만 필요합니다. 더 좋은 방법이있는 것처럼 보입니다.이벤트 트리거 된 창 메시지

답변

1

당신은 아마 할 수 있지만 Windows가 더 직접 메시지를받을 때 반환됩니다 MsgWaitForMultipleObjects을 사용하고 지원하는, 또는 (단 하나가 될 수 있습니다)을 통과 핸들의는 신호입니다.

또는 ReadFileEx/WriteFileEx을 사용하여 I/O를 수행하고 MsgWaitForMultipleObjectsEx을 사용할 수 있습니다. 이 경우 완료 루틴을 지정합니다. 실행은 MsgWaitForMultipleObjectsEx에 대한 호출에서 완료 루틴으로 직접 점프합니다. 메시지/리턴 값을 보지 않아도 무슨 일이 있었는지 파악할 필요없이 코드를 실행하여 적절히 처리 할 수 ​​있습니다.

어느 쪽이든, 다른 Windows 메시지를 계속 처리하고 I/O 완료를 위해 폴링하지 않고 I/O 완료를 처리합니다.