Thread t = new Thread(new ParameterizedThreadStart(b));
其中b如果是2个参数的方法,怎么办。好像不可以new 自己写的委托。求解释
其中b如果是2个参数的方法,怎么办。好像不可以new 自己写的委托。求解释
解决方案 »
- 请高手指点C# new Process出异常
- 紧急求助!!关于 System.Runtime.InteropServices.COMException: Invalid class string
- c#????????
- 请教 C# 条形码的问题~!
- 怎么实现在线注册?
- 空余时间做了个论坛,想放到网上去,请大家推荐一个便宜点的空间!!!!
- 高手帮忙:VB.net 转换成 C#.net(ComboBox 控件添加到 Windows 窗体 DataGrid 控件)
- 求助,关于网站项目修改编译后上传的问题!?
- .net web网站缓存问题
- comboBox如何显示一颗树
- 关于加密算法的问题.在线等!!!
- HttpWebRequest登录某https网站失败的问题
{
public string param1;
public int param2;
public event Action param3
........ public void b()
{
......
}
}也就是说,原来的方法b可以重新设计封装为一个对象,方法b内部就可以使用this.param1、this.param2这样的方法去得到参数,甚至触发param3事件。而调用者只是记得先要new这个类型对象实例而已。例如var x= new B_Process{ param1="a", param2=1};
Thread t = new Thread(new ParameterizedThreadStart(x.b));
{
b(param1,param2);
}));直接使用委托之前定义的变量,根本无需顾及ParameterizedThreadStart有几个参数!其实匿名委托跟上述单独设计新的类型是完全一样的做法,只不过是c#编译器给你自动产生的。即时你编写.net2.0的程序,只要你使用比较高级的代发工具,例如vs2010或者vs2008,它都是支持的。
{
b(param1,param2);
}这是个什么语法,没学过呢x代表什么=>又是什么
B方法只使用一个参数 b(object param)Thread t = new Thread(new ParameterizedThreadStart(b));
t.Start(new string[2] {参数1,参数2});b内部
string[] pa=(string [])param;