所以我有 2 个不同的线程:thread1 和 thread2,使用以下方法运行:
public static void thread1()
{
Assembly asm = Assembly.LoadFrom("t.dll");
Type t = asm.GetType("dis.Code");
Object Res = t.InvokeMember("Start", BindingFlags.InvokeMethod, null, null, null);
}
public static void thread2()
{
Assembly asm = Assembly.LoadFrom("test.dll");
Type t = asm.GetType("dis.Code");
Object Res = t.InvokeMember("Start", BindingFlags.InvokeMethod, null, null, null);
}
我要做的是调用 2 个不同的文件“t.dll”和“test.dll”。它们都与包含上述程序的 .exe 文件位于同一目录中。.dll 文件唯一能做的就是一个简单的 Console.WriteLine。
所以这里的问题是:调用一个文件与 1 或两个线程导致成功,并将发布 Console.WriteLine 两次。但是,一旦我调用了 2 个不同的文件,每个线程 1 个文件,我在第二次调用中最终得到 NullReferenceException。
这都是用 C# 编码的。请帮忙 :(