2 lxysjl lxysjl 于 2016.04.26 21:53 提问

二个线程之间的区别,C#
string ticket_list = "1,2,3,11,12";
        string[] sArray = ticket_list.Split(',');
        if (sArray.Length > 0)
        {

                foreach (var i in sArray)
            {
                task = new Task(() =>
                {

                    Task a = Task.Run(() =>
                    {
                        MyMethod(int.Parse(i));
                    });
                });
            }


            task.Start();
        }


string ticket_list = "1,2,3,11,12";
string[] sArray = ticket_list.Split(',');
if (sArray.Length > 0)
{
task = new Task(() =>
{
foreach (var i in sArray)
{

                    Task a = Task.Run(() =>
                    {
                        MyMethod(int.Parse(i));
                    });

这二个线程有什么区别吗,看结果好像差不多。他们各自有什么优缺点

1个回答

caozhy
caozhy   Ds   Rxr 2016.04.26 21:56

在C# 4.0上,前者MyMethod(int.Parse(i));每个i都是12
在C# 5.0上,每个i是数组的某个值。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!