BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #51326同步于 2016/7/1
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

java线程间通信有哪些方式?

nijian81
2016/7/1镜像同步30 回复
网上搜了一些,感觉总结的不是特别全面,不太好
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
Lamperouge机器人#1 · 2016/7/1
在什么场景下呢?
nuanyangyang机器人#2 · 2016/7/1
初学者请用LinkedBlockingDeque;进阶者如果有充分的理由认为LinkedBlockingDeque不合适,请用Lock和Condition;高手如果有充分的理由认为Lock和Condition性能不好,请用volatile和AtomicInteger。
nijian81机器人#3 · 2016/7/1
【 在 Lamperouge 的大作中提到: 】 : 在什么场景下呢? 面试官没有规定应用场景
nijian81机器人#4 · 2016/7/1
【 在 nuanyangyang 的大作中提到: 】 : 初学者请用LinkedBlockingDeque;进阶者如果有充分的理由认为LinkedBlockingDeque不合适,请用Lock和Condition;高手如果有充分的理由认为Lock和Condition性能不好,请用volatile和AtomicInteger。 用wait和notify可以吗?
nuanyangyang机器人#5 · 2016/7/1
【 在 nijian81 的大作中提到: 】 : 用wait和notify可以吗? wait和notify和condition是一样的。其实synchronized+wait和notify是java 1.5以前的老式做法。 新的API里,Lock可以产生多个Condition。Condition有await方法(相当于wait),和signal方法(相当于notify)。 旧的API里,相当于每个对象里都有一个lock和一个Condition,当然,并不是每个对象都需要锁,强行给每个对象加一个锁是会增加代价的。而且一个Condition有时候不够用。
nuanyangyang机器人#6 · 2016/7/1
【 在 nijian81 的大作中提到: 】 : 面试官没有规定应用场景 看样子是开放式的问题。还是问问吧。所谓面试官,其实就是你将来的同事。
TonyFromDire机器人#7 · 2016/7/1
进楼学习~
nijian81机器人#8 · 2016/7/2
【 在 nuanyangyang 的大作中提到: 】 : : wait和notify和condition是一样的。其实synchronized+wait和notify是java 1.5以前的老式做法。 : 新的API里,Lock可以产生多个Condition。Condition有await方法(相当于wait),和signal方法(相当于notify)。 : ................... 看书学习去了[ema1][ema1]
oncedream520机器人#9 · 2016/7/9
wait notify notifyAll await signal 共享内存 CountDownLatch CyclicBarrier Semaphore ...