Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

VS2013 Debug/Windows/Tasks: "No tasks to display"

I have Visual Studio Professional 2013 and I am debugging an application which uses async/await extensively. But when I stop at breakpoint and open Debug/Windows/Tasks window, it always says "No tasks to display."

I've made two test, in one I can see task, in another I can't (I run program, and pause it). Or I can breakpoint at waiting fro task line.

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");
        }
    }
}

Can anybody explain why I can see tasks in one case but not in another?

like image 991
Vadym Chekan Avatar asked Oct 29 '14 19:10

Vadym Chekan


1 Answers

From http://blogs.msdn.com/b/dotnet/archive/2013/06/26/announcing-the-net-framework-4-5-1-preview.aspx

In Windows 8.1 Preview, the OS has an understanding of asynchronous operations 
and the states that they can be in, which is then used by Visual Studio 2013 preview, 
in this new window [Tasks]

Given that @ScottChamberlain confirmed that Tasks window in Visual Studio works on Win8.1 and not on Win7, that seems to be the problem.

like image 115
Vadym Chekan Avatar answered Oct 10 '22 07:10

Vadym Chekan