关于线程的执行顺序问题,请指教

lci21 2005-08-18 08:37:37
我有两类线程A和B,A和B的业务逻辑不同,相互之间独立,
我想问一下,怎样保证所有的A类线程执行完以后才开始执行B类线程?谢谢
...全文
253 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
inexplicable 2005-08-19
  • 打赏
  • 举报
回复
比较符合你的要求的方法有两个,
1) wait + notify
B 线程 wait, 直到A notify

2) 这个有要求,要 A是子线程,B是主线程
A.join()
A结束后B 才继续执行。
ChDw 2005-08-19
  • 打赏
  • 举报
回复
如果这样,你还是在线程C中使用ThreadGroupA,所有的线程A都属于ThreadGroupA
然后在C中调用ThreadGroupA的activeCount() 来看看是不是所有的A都已经结束了
laxxx6 2005-08-19
  • 打赏
  • 举报
回复
不懂,学习中....帮你顶...
lci21 2005-08-19
  • 打赏
  • 举报
回复
我的是A和B都会放到线程池里面,又没有办法控制线程池里面的A类线程先执行,B类线程等待所有A类线程执行完后才执行?
lci21 2005-08-18
  • 打赏
  • 举报
回复
关键是我怎么才能知道A这一组线程完全执行完了?有什么好的办法吗?
监控线程能解决吗?怎么用的?能否给个大致的示例,非常感谢
interhanchi 2005-08-18
  • 打赏
  • 举报
回复
那你在a执行完后,再start b不就行了!
lci21 2005-08-18
  • 打赏
  • 举报
回复
没有别的方法吗?
superslash 2005-08-18
  • 打赏
  • 举报
回复
寒楼上的
线程概念不是你理解的这个意思
iamthebest1983923 2005-08-18
  • 打赏
  • 举报
回复
设置A的优先级别比B高
A.setPriority(int a);
B.setPriority(int b);
a>b
muroachanf 2005-08-18
  • 打赏
  • 举报
回复
java里面的用法不会
superslash 2005-08-18
  • 打赏
  • 举报
回复
个人认为这样干脆不用线程得了
shoulders 2005-08-18
  • 打赏
  • 举报
回复
使用线程的join()方法.
lci21 2005-08-18
  • 打赏
  • 举报
回复
A和B都不是一个,都有很多
ChDw 2005-08-18
  • 打赏
  • 举报
回复
你的线程A是一组线程还是一个啊,如果是一个那还有必要吗?

你启动一个线程C,在线程C中调用A的run方法(不是start,即不会启动另外一个线程),然后再调用B的run方法,这样就可以保证顺序啦

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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