黑马程序员技术交流社区
标题:
创建线程的疑惑
[打印本页]
作者:
乔利柱
时间:
2012-10-22 10:00
标题:
创建线程的疑惑
本帖最后由 乔利柱 于 2012-10-24 13:16 编辑
Thread t = new Thread(new ThreadStart(Go));
Thread t1 = new Thread(Go);
这两种创建线程的方式有什么区
在应用中 需要注意些什么
作者:
刘俊红
时间:
2012-10-22 14:28
Thread t = new Thread(new ThreadStart(Go));
Thread t1 = new Thread(Go);
两种方法在C#2.0及其更高版本没有区别:前者是C#1.0的语法;后者是C#2.0
新增加
的语法。
Thread类构造函数的参数是一个委托,括号里的表示定义一个委托实例。
这两条语句都是把一个委托实例作为参数,但是:
1) 前者是属于C#1.0的语法,通过 new ThreadStart(方法名) 完整的定义了一个委托实例。
他虽然不是很难看,但是也不方便,特别是在一个比较长的语句里。
于是,C#2.0 对这个语言特性进行了简化:一个方法能隐式转换为 一个兼容的委托实例。这就是「方法组转换」。
2) 所以,后者就是前者在C#2.0极更高版本的简写方法。 除非还在使用C#1.0,否则用后者写法更简单。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2