.NET多线程编程 中我们经常会用到TASK类去开启新的线程,这个TASK类既简单又方便而且便于理解,TASK有Run(()=>{})、 Task.Factory.StartNew(()=>{})等方法,今天我们介绍的是 .NET多线程编程 Task.Factory.StartNew(()=>{})方法,他很方便携带参数。

Task.Factory.StartNew((x) =>
{
    var innerConnection = (Connection)x;
    innerConnection.SendObject("Msg", "你已报到成功,请等候命令!");
}, connection);

上面的示例是我在做网络通信案例中用到的,他巧妙的使用 .NET多线程编程 TASK类中的工厂(Factory)方法,方便的从外部携带参数进入Lambda表达式中,保证了参数传递的准确性。