【发布时间】:2021-03-03 19:57:52
【问题描述】:
我没有设置事件信号,但 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。
【问题讨论】: