我正在Windows上的LabView中开发一个应用程序。从一周前开始,一台测试机(一台ToughBook,不少于一台)每隔几天就完全冻结一次:没有鼠标光标,任务栏时钟被冻结。所以昨天它已经退休了。但就在这时,我已经在另一台机器上看到了它,也是一台笔记本电脑。
对于PC而言,这是一种非常罕见的故障模式。我对Windows不是很了解,但是我希望它能够表明软件已经完全停止运行,并且突然内核无法发生恐慌。
这是一个准确的评估吗?我从哪里开始调试此问题?是什么控制了Windows体系结构中的游标 - 它是所有内核模式还是有一个窗口服务器可能会被某些东西堵塞?不稳定的第三方硬件驱动程序会导致这种情况,而不是蓝屏吗?
编辑:我应该补充一点,代码运行时不一定会发生冻结。
答案 0 :(得分:2)
我当然会考虑硬件和/或驱动程序 - 也许您可以说硬件涉及什么?
您可以通过为LabVIEW代码与之对话的每个硬件添加“调试模式”来测试这一点,您可以在一个案例结构,用于跳过实际的I / O调用并将虚拟数据返回给应用程序的其余部分。确保它与真实设备返回的数据量相似。如果您已将代码模块化为具有明确定义功能的子VI,您会发现这更容易!如果禁用对特定硬件位的I / O调用会停止冻结,则表明该硬件或其驱动程序可能存在问题。
答案 1 :(得分:1)
很难说出问题所在。根据症状,我会检查可能的内存泄漏(使用“Windows任务管理器”查看您的LabVIEW应用程序内存使用是否超时)。