C#向线程传递参数和获得返回值
2015-07-03 18:12
441 查看
C#发起一个线程以后,经常需要给线程传递一些参数。总结了几种启动线程传递参数的方法。
传递参数
1、通过构造函数传递参数
MyClass obj = new MyClass(a,b); Thread t = new Thread(new ThreadStart(obj.ThreadMethod)); t.Start();
2、通过对象的属性传递参数
MyClass obj = new MyClass(); obj.a = a; obj.b = b; Thread t = new Thread(new ThreadStart(obj.ThreadMethod));
3、使用带参数的ParameterizedThreadStart来代替ThreadStart
MyClass obj = new MyClass(); Parameter p = new Parameter(); Thread t = new Thread(new ParameterizedThreadStart(obj.ThreadMethod,p));
4、使用一个全局的对象,或者单例模式,来设置某个共享资源
获得返回值
1、传递参数传递对象,利用对象的引用性来传递返回值
2、通过委托返回值
GetClass.Invoke(new Action<string>(GetClass.Method,"returnValue")); //或者自定义委托的方式返回
相关文章推荐
- C#线程的基础知识
- C#.NET里面抽象类,接口,虚方法
- C# 窗体透明
- C# 执行文件的根目录 (转)
- 使用C#的try…catch语句
- 通俗易懂的 C#反射
- c#读excel 不用office组件
- c#中的委托和事件
- c#命名规范
- C#冒泡法排序算法实例分析
- C# web通信解决方案
- C#中的WebBrowser控件的使用
- 【转】用C#实现的条形码和二维码编码解码器
- 61. C# -- 将string 转化为datetime类型
- C#获取当前日期时间(转)
- C#对象的浅拷贝,深拷贝
- C# Winform中DataGridView的DataGridViewCheckBoxColumn使用方法
- c#TextBox输入框自动提示、自动完成、自动补全功能
- C#把整个文件内容读入字符串变量的方法
- C#读取文件所有行到数组的方法