有没有办法在设置事件时生成窗口消息?我想设置一个重叠的 I/O 操作,所以它不会阻塞,但我不想轮询它的状态。我知道我可以使用线程,但我只需要它来执行此操作。似乎有更好的方法。
问问题
66 次
1 回答
1
您可能可以这样做,但是 Windows 更直接地支持的是 using ,当您收到消息或您传递的任何句柄(只能是一个)发出信号MsgWaitForMultipleObjects
时,它将返回。
或者,您可以使用ReadFileEx
/WriteFileEx
来执行 I/O,然后使用MsgWaitForMultipleObjectsEx
. 在这种情况下,您指定一个完成例程。执行直接从您的调用跳转MsgWaitForMultipleObjectsEx
到您的完成例程,而无需查看消息/返回值来弄清楚发生了什么,然后跳转到代码以适当地处理它。
无论哪种方式,您都将继续处理其他 Windows 消息并处理 I/O 的完成,而无需轮询 I/O 的完成情况。
于 2012-06-04T16:06:08.417 回答