多线程中
new Thread(t1);
和new Thread(new ThreadStart(t1));有什么区别呢?
没有区别。
前者,是c#的语法。也就是说是编译器帮你改写为第二种形式;
.net中根本不支持 new Thread(t1); 这种代码,这是c#编译器支持的。类似的东西也有很多。所以说c#比较优雅,是指这个部分。
在C#中,线程入口是通过ThreadStart代理(delegate)来提供的,可以把ThreadStart理解为一个函数指针,指向线程要执行的函数,当调用C# Thread.Start()方法后,线程就开始执行ThreadStart所代表或者说指向的函数。