2012-06-04 173 views
0

當設置事件時,是否有方法可以生成窗口消息?我想設置一個重疊的I/O操作,所以它不會阻塞,但我不想輪詢它的狀態。我知道我可以使用一個線程,但我只需要這個操作。似乎有更好的方法。事件觸發窗口消息

回答

1

你或許可以做到這一點,但什麼的Windows更直接使用MsgWaitForMultipleObjects,當你得到一個消息,該消息將返回支持,任何你通過手柄(這隻能是一個)的發出信號。

或者,您可以使用ReadFileEx/WriteFileEx來執行I/O,並使用MsgWaitForMultipleObjectsEx。在這種情況下,您需要指定一個完成例程。執行從您的調用直接跳轉到MsgWaitForMultipleObjectsEx到您的完成例程,而無需查看消息/返回值來確定發生了什麼,然後跳轉到代碼以正確處理它。無論採用哪種方式,您都將繼續處理其他Windows消息並處理完成的I/O,而無需查詢I/O完成情況。