社区
C#
帖子详情
怎样判断线程是否结束?--在线等待
mafgm
2007-07-31 03:51:02
比如:我开10个线程,怎样判断这10个线程已经都全部结束?
...全文
713
13
打赏
收藏
怎样判断线程是否结束?--在线等待
比如:我开10个线程,怎样判断这10个线程已经都全部结束?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
songcan
2007-07-31
打赏
举报
回复
等待信号量与设置标志位,回调函数皆可,哪一个都可实现
liusong_china
2007-07-31
打赏
举报
回复
IsAlive...
greenery
2007-07-31
打赏
举报
回复
等待信号量System.Threading.WaitHandle.WaitAll好些。
KKND2006
2007-07-31
打赏
举报
回复
计数么
开始一个线程就+1
结束一个线程就-1
MS很多东西都是这么干的
shrinerain
2007-07-31
打赏
举报
回复
回调函数
Code従業員
2007-07-31
打赏
举报
回复
线程.IsAlive
ezhuyin
2007-07-31
打赏
举报
回复
有很多办法啊,最常见的就是设置标志,比如
SortedList<string,bool> tListTag;
开跑的时候设定一个名字Thread.Name,然后在结束的时候,用
lock (tListTag)
{
tListTag[Thread.CurrentThread.Name] = false;
}
只要是false的,都是已经跑完的
CTBOK
2007-07-31
打赏
举报
回复
附加一句,一般判断线程都是这样子的
1、把线程的内容用类来封装,然后用xx.yy启动线程
2、在类的开头有一启动public变量,例如:treadalive=true,到结束的时候,treadalive=false
3、在主线程用xx.yy.变量来判断线程是否结束
CTBOK
2007-07-31
打赏
举报
回复
http://blog.csdn.net/siyou/archive/2006/12/22/1453047.aspx
用这个吧,前面加一个FOR就可以了
Fan52027
2007-07-31
打赏
举报
回复
上面代码没验证,小心
foyuan
2007-07-31
打赏
举报
回复
1 全局变量
设置变量值
循环检查
2
System.Threading.ManualResetEvent e = new System.Threading.ManualResetEvent(false);
然后把这个e传进线程的方法中,在里面调用e.Set()表示线程结束
在线程外用
e.WaitOne或者System.Threading.WaitHandle.WaitAll等待
Fan52027
2007-07-31
打赏
举报
回复
bool flag=false;
List<Thread> array=new List<Thread>();
//添加Threads
for(int i=0;i<array.Length;i++)
{
if(array[i]!=null)
{
flag=true;//没有结束
Break;
}
}
if(flag==false)
{
//全部结束
}
else
{
//未结束
}
mafgm
2007-07-31
打赏
举报
回复
是不是分太少啊?
python爬虫-08-主
线程
会
等待
子
线程
执行
结束
再
结束
.ev4.rar
python爬虫-08-主
线程
会
等待
子
线程
执行
结束
再
结束
.ev4.rar
python爬虫面试宝典(常见问题)
是否
了解
线程
的同步和异步?
线程
同步:多个
线程
同时访问同一资源,
等待
资源访问
结束
,浪费时间,效率低
线程
异步:在访问资源时在空闲
等待
时同时访问其他资源,实现多
线程
机制
是否
了解网络的同步和异步? 同步:提交请求->
等待
服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事 异步: 请求通过事件触发->服务器处理(这是浏览器仍然可以作其他事情)->处理完毕 链表和顺序表储存时各自有什么优点? 1.顺序表存储 原理:顺序表存储是将数据元素放到一块连续的内存存储空间,存取效率高,速度快。但是不可以动态增加长度 优点:存取速度高效,通过下标来直接存储 缺点:1.插入和删除比较慢,2.不可
Java基础核心技术:多
线程
(day16-day17)
本套Java视频完全针对初级学员,课堂实录,自发布以来,好评如潮!Java视频中注重与学生互动,讲授幽默诙谐、细致入微,覆盖Java基础所有核心知识点,同类Java视频中也是代码量大、案例多、实战性强的。同时,本Java视频教程注重技术原理剖析,深入JDK源码,辅以代码实战贯穿始终,用实践驱动理论,并辅以必要的代码练习。
Windows和Linux上分别怎样实现
等待
某个
线程
结束
?---用WaitForSingleObject和pthread_join
Windows和Linux上分别怎样实现
等待
某个
线程
结束
呢, 我们先看Windows的情形, 直接上代码: #include #include DWORD WINAPI Fun1Proc(LPVOID lpParameter) { int i; for(i = 0; i < 100; i++) { cout << "son thread" << i + 1 << endl;
Java多
线程
之----主
线程
会
等待
子
线程
结束
再
结束
么,怎么让主
线程
等待
子
线程
结束
呐?
首先给出结论: 主
线程
和子
线程
之间没有谁先谁后
结束
这种关联,它们只是各自负责自己的
线程
任务,如果该
线程
的任务
结束
了,该
线程
自然会
结束
运行。 talk is cheap,show me the code and the result 1.先来一个好理解的: 下面这个例子中,由于子
线程
循环了100次,干的活多,走的慢,所以
结束
的晚。可以看到执行结果,主
线程
结束
后,子
线程
稍等了一会才
结束
执行,并没有主
线程
需要
等待
子
线程
结束
的情况。 主
线程
的任务: 1.thread.start 开启子
线程
2.System.o
C#
110,545
社区成员
642,581
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章