0
点赞
收藏
分享

微信扫一扫

c#:Task.Run() 和 Task.Factory.StartNew()有何不同

科牛 2022-02-03 阅读 67

待续。。。

internal class Program
{
    static void Main(string[] args)
    {
        var counter = 0;
        var list = new List<int>();
        var tasks = new List<Task>();
        for (int i = 0; i < 10; i++)
        {
            var task = Task.Factory.StartNew(async () =>
             {
                 await Task.Delay(1000);
                 var tmp = ++counter;
                 list.Add(tmp);
                 Console.WriteLine(tmp);
             }).Result;
            tasks.Add(task);

            //tasks.Add(Task.Run(async () =>
            //{
            //    await Task.Delay(1000);
            //    var tmp = ++counter;
            //    list.Add(tmp);
            //    Console.WriteLine(tmp);
            //}));
        }

        Task.WaitAll(tasks.ToArray());
        Console.WriteLine("ok");

    }
}
举报

相关推荐

0 条评论