语言:C#
运行时:.NET 4客户端
问题:在大约14分钟时发生垃圾收集(如诊断工具中所示),此时紧接着是一个例外,其中包含以下信息:
Test.exe中0x163BA480处抛出异常:0xC0000005:Access 违规执行地点0x163BA480。
我的程序引用了第三方程序,目的是通过插件添加其他功能。
我的程序由程序集组成:
所有程序集都加载到同一个Appdomain中。最终这将被更改,以便每个程序集都在它自己的Appdomain中。
在这种特殊情况下,插件组件是一个简单的类定义,没有其他正在执行的代码/方法,即:
using System;
using Interface;
namespace TestAddin
{
public class TestAddin
{
}
}
输出:
程序成功运行,加载程序集并显示它们。
然后程序执行第三方程序(通过引用的dll中的Run()方法)
程序成功执行了大约14分钟,直到前面提到的异常发生。
我不知道如何调试这个,我怎么知道发生异常的地方?我编写的三个项目都没有使用非托管代码,引用的程序集在C#中运行,我找不到使用dotpeek的非托管代码。
如果需要任何进一步的信息,我将非常感谢任何帮助。我很乐意提供它。