多线程,new Thread(t1);和new Thread(new ThreadStart(t1));有什么区别? btn1.Click += btn1_Click;btn1.Click += new EventHandler(btn1_Click);方法名 是 创建委托实例 的简写 。 没区别 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我以前不明白,都是照抄的new Thread(new ThreadStart(t1));后来发现new Thread(t1);效果一样,都不那么写了 没有区别。前者,是c#的语法糖。也就是说是编译器帮你改写为第二种形式。因此你要搞清楚,这是.net的特性还是c#的特性。这是c#得特性,如果有人以为第一种写法“是.net的”那他就错了。 .net中根本不支持 new Thread(t1); 这种代码,这是c#编译器支持的。类似的东西也有很多。所以说c#比较优雅,是指这个部分。要分清楚“什么是c#的,什么是.net的”,你能更好地理解c#,也能更好地理解.net。 你要搞清楚ThreadStart是一个委托。虽然它叫Thread,但是它其实是一个普普通通的委托类型。就好比button.Click += button1_Click;和button1.Click += new EventHandler(button1_Click); ComponentOne C1Excel保存图片 异步 Socket 多线程 怎样得到一段代码运行的间隔时间呢 WINFORM输入法问题。。 怎样在单击HyperLink后触发一个事件让datalist隐藏 存储过程中,如何将值传递到ROW_NUMBER() OVER(ORDER BY @input) 的参数? 问个低级问题(如何定义控件数组) 关于单元测试(NUnit.org) 用流读取文本文件可以,记住读取的结束位置,下次直接从该处读取么? c# 如何读取Excel单元格颜色与备注? JSON反序列化求解 关于 DataGridView 虚拟模式的刷新问题
后来发现new Thread(t1);效果一样,都不那么写了
就好比
button.Click += button1_Click;
和
button1.Click += new EventHandler(button1_Click);