为什么我的任务不显示在Visual Studio任务窗口中?

3

我正在使用以下代码创建一些任务:

    private Task PollSomething()
    {
        return Task.Run(
            async () =>
            {
                while (!_cts.Token.WaitHandle.WaitOne(200))
                {
                    var result = await _channel.DoSomethingAsync();
                    DoSomethingWithResult(result);
                }

                if (_cts.IsCancellationRequested)
                    throw new TaskCanceledException();

            }, _cts.Token);
    }

当我测试代码时,一切都按预期工作,但是当我在调试器中运行它时,无法使用“任务”窗口(以前称为并行任务窗口)可视化任务。我可以很清楚地看到线程。

可能是什么原因导致任务不可见?

P.S. 我正在使用R#测试运行程序和NUnit来执行此操作。


1
可能不被支持。你尝试使用MSTest运行器了吗? - Spock
你正在使用哪个操作系统? - Stephen Cleary
没有尝试过MSTest运行器。会试一下的。 - Jack Ukleja
1
是因为异步 void lambda 的原因吗? - Jack Ukleja
我在 MSTest 中尝试了这个,但是遇到了同样的问题。 - Darragh
1个回答

2
原来有一个Visual Studio设置:“使用托管兼容模式”,可以解决这个问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接