我有一个多线程的.Net C#应用程序,它使用Direct3D 9/10和XAudio2。 (Direct3D只能通过一个线程访问,对于XAudio2也是如此Direct3D不是问题导致错误在DX9或DX10模式下显示,但其行为没有任何变化。)没有任何异常的应用程序崩溃
有时(有些区域给出这个问题随机)这个应用程序崩溃在一个相当不寻常的方式。即使应用程序是通过带有调试器的visual studio启动的,它也会崩溃而不会给出任何类型的异常。 (它开始说“applicationname.svchost.exe崩溃了,等等..等等。你想调试吗?”,如果我按是它告诉我“你不能调试已关闭的应用程序”。)
There没有办法找出崩溃的原因是什么?因为我已经没有想法了,调试器根本没有给我任何信息。没有例外,我甚至不能执行堆栈跟踪或转储。 P(我假设是一个同步问题(甚至认为在那个领域我只做顺序工作......),但嘿为什么不发起异常?:|)
在问题发生我正在卸载重新加载一系列与小说有关的类(在顺序核心线程中,所以我怀疑它可能是一个问题),并通过XAudio2启动一个新的音乐(顺便说一下,什么是m有关XAudio2的超线程考虑?从多个线程调用是否安全?)
感谢您的帮助。
P.S.有一个软件可以连接到我的监控所有电话,并告诉我什么是崩溃前的最后一次通话?
您应该发布程序崩溃时所得到的确切消息。我怀疑它实际上是说“坠毁”。错误消息中可能有一些有用的线索。 – Jacob 2010-01-10 00:34:36
没有消息,没有VS调试器给出的异常,消息是“应用程序name.svchost.exe停止工作,你想调试吗?”,如果我按是开始另一个视觉工作室,并告诉我“你不能调试应用程序已关闭“ – feal87 2010-01-10 08:07:13