我没有设置事件信号,但 WaitForSingleObject 总是返回。我在主线程中创建一个事件。
g_hHeartMonitorEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
然后在另一个线程中,我使用 WaitForSingleObject 等待事件发出信号。
`
while(true)
{
DWORD dwResult = WaitForSingleObject(lpThis->g_hHeartMonitorEvent, 90 * 1000);
if (WAIT_OBJECT_0 == dwResult)
{
LogWriteEx("WaitForSingleObject:dwResult = WAIT_OBJECT_0");
continue;
}
}
`
我发现 WaitForSingleObject 总是返回 WAIT_OBJECT_0。仅在一个地方调用 setevent。该机器有一个单核CPU。