循环多线程返回值获取

bangfj 2012-05-18 04:36:03
我的程序是timer侦听(秒),每触发一次就调用一次线程 我想得到每个线程的返回值显示在主窗体的控件上 如listview,而我线程的方法是写在另一个类中的(即不是在主form中的)。如何能准确得到这些返回值???
如:
A类(住form中的)timer事件(每秒)
{
定义变量 m
开起线程,线程方法是B类中的m=function()返回值赋值给m
将m添加到listview中的方法 listvieAdd()
}
不知道该如何让m能得到准确的返回值,我是怕这个线程还没有结束就执行listviewAdd() 这样肯定是错误的。请高手们指点指点谢谢~~~~
...全文
220 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
http://www.cnblogs.com/jianglai11/articles/1708330.html
bangfj 2012-05-18
  • 打赏
  • 举报
回复
再顶一下 看还有高手回答不
bangfj 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
void threadFunc(object i)
{
dosomething
{}

//该做的都做完了,触发一个事件,通知一下外面吧。
if(ThreadEnd!=null)
{
ThreadEnd(m);
}
}

event ThreadEventHandler ThreadEnd;

delegate void ThreadEventHand……
[/Quote]
迷糊~~~~
cheng2005 2012-05-18
  • 打赏
  • 举报
回复
void threadFunc(object i)
{
dosomething
{}

//该做的都做完了,触发一个事件,通知一下外面吧。
if(ThreadEnd!=null)
{
ThreadEnd(m);
}
}

event ThreadEventHandler ThreadEnd;

delegate void ThreadEventHandler(object m);

外界处理ThreadEnd这个事件就可以了。
bangfj 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

可是可以,要用委托的方式来写代码;
进度条不就是这么的吗
[/Quote] 用委托该如何实现??? 谢谢谢
bangfj 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

引用 2 楼 的回复:
引用 1 楼 的回复:

线程结束的时候发一个事件出来

关键是怎么确定线程结束????????

线程肯定知道自己什么时候结束啊
[/Quote]
如果说加thread.jion()方法的话就会堵塞程序的正常运行,如果再加个timer事件的话里面怎么能确定是哪个线程结束的,给我的感觉还是不能保证数据的真确性。 我新手 麻烦你说清楚些
cheng2005 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
引用 1 楼 的回复:

线程结束的时候发一个事件出来

关键是怎么确定线程结束????????
[/Quote]
线程肯定知道自己什么时候结束啊
hui717 2012-05-18
  • 打赏
  • 举报
回复
可是可以,要用委托的方式来写代码;
进度条不就是这么的吗
bangfj 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

线程结束的时候发一个事件出来
[/Quote]
关键是怎么确定线程结束????????
cheng2005 2012-05-18
  • 打赏
  • 举报
回复
线程结束的时候发一个事件出来

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧