摘要: 如果你定义了一个单实例的java bean,它有若干属性,但是有一个属性不是线程安全的,比如说HashMap。并且碰巧你并不需要在不同的线程中共享这个属性,也就是说这个属性不存在跨线程的意义。那么你不要sychronize这么复杂的东西,ThreadLocal将是你不错的选择。 举例来说: import java.util.HashMap; public class TreadLocalT... 阅读全文
posted @ 2013-01-20 23:36 永远是学生 阅读(71141) 评论(3) 推荐(1)
摘要: 在使用Lock之前,我们都使用Object 的wait和notify实现同步的。举例来说,一个producer和consumer,consumer发现没有东西了,等待,produer生成东西了,唤醒。 线程consumer 线程producer synchronize(obj){ obj.wait()... 阅读全文
posted @ 2013-01-20 13:54 永远是学生 阅读(15423) 评论(0) 推荐(4)