- 博客(2)
- 问答 (1)
- 收藏
- 关注
原创 看《Java并发编程实践》的笔记
避免隐式的溢出可以使用一个私有的构造函数和一个公共的工厂方法 不可变对象:状态不变,所有域都final,正确创建 优先使用一个不可变对象; 优先使用一个正确发布(正确发布是指实例变量暴露给其他类)的高效不可变对象(静态化初始器Dao me这种,把它的引用存到volatile/AtomicReference/final中,或者把它的引用存储到被锁保护的域中) 被正确发布的线程安全或者被保护的
2017-02-23 12:32:29 248
原创 notify产生死锁的场景(备忘)
生产者、消费者数量都为2,缓冲区为1,当按照下列并发顺序执行的时候出现死锁: 1.消费者1获得锁,发现缓冲区为0,wait(wait自动释放锁); 2.消费者2获得锁,发现缓冲区为0,wait(wait自动释放锁); 3.生产者1获得锁,发现缓冲区为0可以生产,生产以后放在缓冲区,notify,现在缓冲区为1 4.第3步notify唤醒了消费者1,但是消费者1没有抢到锁,锁被生产者2拿到了
2017-02-23 12:22:00 2569 5
空空如也
有关spark jar包的某些疑问
2016-10-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人