c# - 使用 ModuleInit.Fody 在 ModuleInitializer 中使用多线程
问题描述
我使用 ModuleInit.Fody 创建应在加载程序集时调用的代码。在这段代码中,我需要在任务中做一些操作。不幸的是,这段代码有问题......任务中的代码没有被触发。当我在模块初始化后使用相同的代码时,就像一个魅力一样。
一些可测试的代码
public static class ModuleInitializer
{
public static AsyncCallback callback;
public static void Initialize()
{
callback = ar => Console.WriteLine("Result");
ConsoleThread(() => ModuleInitializer.RunThread(1));
Console.WriteLine("Compleate");
Console.ReadKey();
}
public static void ConsoleThread(Action inputFunct)
{
IAsyncResult result = inputFunct.BeginInvoke(callback, null);
}
public static void RunThread(int i)
{
Console.WriteLine($"Thread {i}");
}
public static void Test()
{
}
}
和program.cs
class Program
{
static void Main(string[] args)
{
ModuleInitializer.Test();
}
}
有谁知道如何创建将在第二个线程中运行的代码,或者这是不可能的?也许有人知道任何其他方式来创建可以在线程中运行的初始化代码?
问候 Szymon Szczepański
解决方案
推荐阅读
- python - 如何在 linux 上安装 pysmb 以执行 python 脚本
- ios - 收藏视图未显示
- node.js - Multer Feilds 在节点 js 中使用封面和头像
- javascript - 部署后如何解决heroku中未找到的错误
- javascript - 最后两行代码看不懂
- angular - 角度动态复选框仅删除一个值
- reactjs - typescript error is not allowed as a variable declaration name.ts
- quarkus - 不使用 @Named 来解析 javax.enterprise.inject.spi.DeploymentException:检测到无法解析的模糊 bean 名称
- javascript - 在 npm run build 的预渲染页面上获取 TypeError
- regex - 匹配正则表达式 Regex sketchengine(不匹配子字符串)