欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【借助封装类实现线程调用带参方法】,下面是详细的分享!
借助封装类实现线程调用带参方法
(一).描述
由于线程只能执行无参数方法. 有时候需要线程执行"带参数方法"
此示例演示怎样借助封装类实现“线程调用带参方法”
(二).代码
本示例代码已经测试,能够正常运行!
(三).示例下载
http://www.cnblogs.com/Files/ChengKing/ThreadExample.rar
using System;
using System.Threading;
namespace 借助封装类实现_线程调用带参方法_
{
class Help
{
public int x=0; //乘数1
public int y=0; //乘数2
public int end=0; //存放结果
}
class MyClass
{
public static Help myHelp=new Help();
[STAThread]
static void Main(string[] args)
{
//给类的成员赋值
myHelp.x=5;
myHelp.y=10;
Thread thread=new Thread(new ThreadStart(GetAccumulate));
thread.Start();
Thread.Sleep(1000); //主线程等待子线程计算完成,否则取得的值为默认值 : 0
Console.WriteLine("两数乘积结果为: "+myHelp.end.ToString());
Console.Read();
}
///
/// 得到两个整数的集
///
/// 乘数x
/// 乘数y
/// x*y
public static void GetAccumulate()
{
myHelp.end=myHelp.x * myHelp.y;
}
}
}
以上所分享的是关于借助封装类实现线程调用带参方法,下面是编辑为你推荐的有价值的用户互动:
相关问题:C# 线程如何执行带参数的类成员函数
答:1)在A类中添加一个线程方法do_fun class A{ // 你原来的线程函数 void fun(string str){ …… } string s; //添加一个属性,可以传入参数 public string para { get{return this.s;} set{this.s = value;} } // 新加线程方法 public void do_fun(... >>详细
相关问题:C# 怎样在线程里调用一个带参数的方法
答:methodA() 要变成 methodA(object xxx) { int i = (int)xxx; } Thread的委托有2个重载,一个是不带参数,另一个是带object参数,你还可以: methodA(object xxx) { objecct[] xx = (objecct[])xxx;// 这样是传递多个参数 } >>详细
相关问题:线程怎么调用带参的方法
答:线程类内部添加属性Graphics g 在构造线程类的对象时用构造方法的参数初始化此属性 >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
