当win7被屏幕锁定时,多线程应用程序是否会永远循环?

时间:2012-03-30 13:02:47

标签: c++ windows-7

我正在开发一个使用多个线程来处理其数据的应用程序。该应用程序是用C ++(英特尔C ++ comp.9.1)开发的,并使用OpenMP。它是在Win7上运行的64位应用程序。

问题是,当我在白天运行它时,它运行正常。但是当我在夜间运行 后屏幕被锁定时,它会在几个进程后进入永久循环。

更准确地说,应用程序被多次调用以处理不同的文件。调用是在批处理文件中完成的(没问题)。

我发现它在锁定屏幕发生后约2小时进入永久循环。

我禁用了所有省电设置。但没有改变。

描述不是很清楚,但原因是我对这个问题的根源没有任何线索。我希望你们中间有人能遇到同样的问题(并找到了解决办法!)。如果你想了解更多细节,请告诉我。

有什么想法吗?提前谢谢!


随着我的测试继续进行,我在另一台计算机上安装了相同的设置(但在发布而不是调试版本中)。我用另一组数据在20分钟后(屏幕锁定后)遇到了同样的问题。我在自己的计算机上运行了相同的数据(没有锁定),一切都很好。

神秘

1 个答案:

答案 0 :(得分:0)

您是否提供了控制应用程序的线程优先级?

此外,我建议通过某种分析来运行它,例如VTune,因为它可以指出可能导致问题的潜在奇怪案例。 (您可以尝试免费评估。)

相关问题