可以为 .NET5 控制台应用程序禁用 ETW 处理吗?

问题描述

我有一个这样的async Main()

    static async Task<int>
    Main(string[] args)
    {
        try {
            var program = new Program();
            await program.RunAsync();
            return 0;
        }
        catch(Exception exception) {
            Log(exception);
            return 1;
        }
    }

这是一个大量使用 HttpClient 的抓取工具。我使用 pwsh 并行运行该进程的 32 个实例,有时(在运行 1000 秒后)一个进程卡住了。当我将 VisualStudio 附加到进程时,我的代码没有线程,但我看到的是:

Stack trace of two threads

似乎有一个回调在等待 ETW 时陷入死锁...

我该如何解决这个问题?在这种情况下,有什么方法可以禁用 ETW 跟踪吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)