WaitForSingleObject没有超时 - C ++

时间:2010-12-13 18:06:30

标签: c++ visual-studio-2008 timeout winapi

我的控制台应用程序在父线程中调用WaitForSingleObject,超时值为5秒。

dwObjectWaitState = ::WaitForSingleObject( s_hRxDataEvent, 50000L );

配置物理环境(即没有代码更改),以便事件永远不会发出信号,我在下一行设置断点,然后运行应用程序。 PC永远不会到达断点。 s_hRxDataEvent是一个有效的事件句柄,通常在子线程中设置。当物理环境按预期配置时,应用程序很有用。为什么功能没有超时?感谢。

4 个答案:

答案 0 :(得分:2)

超时以毫秒为单位。 50000是50秒,而不是5秒。

答案 1 :(得分:1)

请注意,那里有一个额外的零。

答案 2 :(得分:1)

50000L毫秒= 50秒。

答案 3 :(得分:1)

WaitForSingleObject的超时值以毫秒为单位,因此50000L表示50秒,而不是5秒。