如何调试Task.Factory

时间:2014-11-25 11:26:42

标签: c# windows-runtime task

如果我有一个给定的方法,例如:

protected Task CreateItemsAsync(object source)
{
    return Task.Factory.StartNew(() =>
    {
        ///////
        code
        ///////
     }
}

我在方法中有一堆代码,但我无法进入该方法。有没有办法在代码中一步一步地进行?

1 个答案:

答案 0 :(得分:0)

在控制台应用中尝试此代码:

using System;
using System.Threading.Tasks;

namespace Demo
{
    public static class Program
    {
        [STAThread]
        private static void Main()
        {
            var task = test();
            Console.WriteLine(task.Result);
        }

        private static Task<int> test()
        {
            return Task<int>.Factory.StartNew(() =>
            {
                int x = 10;  // <-- Set a breakpoint here.
                int y = 5;
                int z = x/y;

                return z;
            });
        }
    }
}

在指定的行处设置断点,然后调试程序。

调试器将停在指定的行,您将能够单步执行线程中的其余行。