Отладка VS2013 / Windows / Задачи: «Нет задач для отображения»
У меня Visual Studio Professional 2013, и я отлаживаю приложение, которое широко использует async / await. Но когда я останавливаюсь на точке останова и открываю окно «Отладка / Windows / Задачи», он всегда говорит: «Нет задач для отображения».
Я сделал два теста, в одном я вижу задачу, в другом я не могу (я запускаю программу и приостанавливаю ее). Или я могу остановиться на точке ожидания в очереди задач.
using System;
using System.Threading;
using System.Threading.Tasks;
namespace TasksDebugWindowTest
{
class Program
{
static void Main(string[] args)
{
DoesNotWork();
}
static void Works()
{
Console.WriteLine("Starting");
var t = Task.Factory.StartNew(() =>
{
Task.Delay(100 * 1000).Wait();
Console.WriteLine("Task complete");
});
Console.WriteLine("Status: {0}", t.Status);
Thread.Sleep(500);
Console.WriteLine("Status: {0}", t.Status);
t.Wait();
Console.WriteLine("Done");
}
static void DoesNotWork()
{
Console.WriteLine("Starting");
var t = Task.Delay(100 * 1000);
t.Wait(); // **** Breakpoint here
Console.WriteLine("Task complete");
}
}
}
Кто-нибудь может объяснить, почему я вижу задачи в одном случае, а не в другом?