我有成千上万的测试用例并且我正在运行它们。如果驱动程序突然崩溃,那么30个测试用例是否正常运行,然后如何通过c / c ++恢复?
答案 0 :(得分:1)
我自己经历过驱动程序崩溃(有一些花哨的着色器代码耗尽内存......)。我可以确认,至少Windows 7会在崩溃后尝试重新启动驱动程序 - 通常需要大约10秒钟。无论如何,我有这样的经验只有惠特NVIDIA卡(最后ATI我冻结了整个系统,故障时奇怪的短声音循环),这对其他操作系统来说也会更成问题。如果你可以使用一些openGL 2.x,我认为最好的选择是虚拟操作系统。如果发生故障,快速和新鲜,很容易重启。
但是为了保持主题,我相信如果你有Windows操作系统,那么这篇文章是可行的:A C++ class wrapper to load/unload device drivers。无论如何我都没有看到关闭和加载驱动程序(== restore)的问题,但是在检测崩溃的驱动程序并干扰它时,操作系统可能正在尝试恢复它或当操作系统卡住时...