昨晚在写个程序,需要创建个线程调用有返回参数的方法。结果失败了,提示返回类型错误。
我想问下大家:
线程能不能调用有返回参数的方法呢?具体应该怎么用??我自己想了两个可以解决的方法:
一:在创建线程之前,先封装个没返回值的方法。方法里面调用那个有返回参数的方法;
二:把那个要传递的参数定义成静态的,在之前那个有返回参数的方法里对静态变量赋值就ok了。
我想问下大家:
线程能不能调用有返回参数的方法呢?具体应该怎么用??我自己想了两个可以解决的方法:
一:在创建线程之前,先封装个没返回值的方法。方法里面调用那个有返回参数的方法;
二:把那个要传递的参数定义成静态的,在之前那个有返回参数的方法里对静态变量赋值就ok了。
Thread send = new Thread( new ThreadStart(keepalive));这个keepalive是有返回值的,而这条语句报错:返回类型错误。你说的应该是keepalive里面的吧??
{
int i = 0;//返回值
Thread th = new Thread((ThreadStart)delegate
{
int tick = Environment.TickCount;
while (Environment.TickCount - tick < 5000) Application.DoEvents();
i = 100;
});
th.Start();
this.Text = "主线程还继续工作了";
while (th.IsAlive) Application.DoEvents();
MessageBox.Show(i.ToString());
}这样可以算实现你要的么?