社区
Java SE
帖子详情
多线程问题
Biglonwl
2010-04-02 09:20:06
比如说有两类线程A、B、C和a b c
分别占有两个队列
那两个队列可以看作临界资源
如果a线程调用notifyAll()
能唤醒ABC的线程吗
肯定能唤醒bc两个线程
那A、B、C呢
...全文
100
2
打赏
收藏
多线程问题
比如说有两类线程A、B、C和a b c 分别占有两个队列 那两个队列可以看作临界资源 如果a线程调用notifyAll() 能唤醒ABC的线程吗 肯定能唤醒bc两个线程 那A、B、C呢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qybao
2010-04-02
打赏
举报
回复
这取决于a,b,c和A,B,C是否共用synchronize资源
a能唤醒b,c,是因为a,b,c共用了一个队列,如果A,B,C用的是另一个队列,那么a的notifyAll对A,B,C并不产生任何影响
用代码简单地说明
synchronized(queue1) {
...
queue1.notifyAll(); //这个notifyAll只会影响使用queue1的线程,不会影响queue2的线程
}
synchronized(queue2) {
...
queue2.notifyAll(); //这个notifyAll只会影响使用queue2的线程,不会影响queue1的线程
}
所以你的问题的答案,取决于A,B,C是否和a,b,c使用了共同的资源,简单地说就是是否共用了同一段synchronized代码
fantasy471503202
2010-04-02
打赏
举报
回复
notifyAll()方法是唤醒所有wait()的线程的意思,让他们重新获得资源,进入就绪状态,排队等待时间片的获得。并不是因为分资源来唤醒吧,A,B,C应该也会被唤醒。
POSIX
多线程
程序设计.pdf
内容简介 《POSIX
多线程
程序设计》深入描述了IEEE的开放系统接口标准——POSIX线程,通常称为Pthreads标准。本书首先解释了线程的基本概念,包括异步编程、线程的生命周期和同步机制;然后讨论了一些高级话题,包括属性对象、线程私有数据和实时调度。此外,本书还讨论了调度的
问题
,并给出了避免错误和提高性能等
问题
的有价值的建议。本书使用了大量注释过后 实例来解释实际的概念,并包括Pthreads的简单索引和对标准化的展望。 《POSIX
多线程
程序设计》适合有经验的C语言程序员阅读,也适合
多线程
人员参考。
WPF
多线程
演示
WPF
多线程
演示
下载
多线程
编程技术开发资料 高清完整PDF版
多线程
编程技术开发资料.pdf 个人收集电子书,仅用学习使用,不可用于商业用途,如有版权
问题
,请联系删除!
Java.Concurrency.in.Practice.pdf
Java.Concurrency.in.Practice.pdf
C#
多线程
问题
第一次在winform写
多线程
代码遇到很多
问题
: 1.方法委托创建
多线程
后该方法就会往下执行,控制子线程执行完主线程再继续往下执行用到两种方法:可获取工作线程==最大工作线程时表示子线程都执行完成;使用信号量控制(曾经学操作系统时不知道有什么用)现在发现
多线程
通信过程信号量还是很重要的。 2.winform控件默认不允许非创建控件线程操作控件,只有
多线程
编程才会出现这个跨线程通信
问题
。解决办法...
Java SE
62,629
社区成员
307,258
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章