-
java concurrency in practice读书笔记
java concurrency in practice是讲述java并发编程的经典著作, 可惜该书的中文版翻译质量不佳. 在啃英文原版的过程中, 有一些总结, 思考, 愿与朋友们分享. 由于我编程经验不足, 英文水平不高, 写作能力不强, 文章里肯定有很多的谬误, 欢迎大家指正
最近更新文章
[本文是我对java concurrency in practice c13的归纳和总结. 转载请注明作者和出处, 如有谬误, 欢迎在评论中指正. ]
任何java对象都可以用作同步的锁, 为了� ...
有5688人浏览
2012-04-11 10:17
[本文是我对java concurrency in practice c11的归纳和总结. 转载请注明作者和出处, 如有谬误, 欢迎在评论中指正. ]
可扩展性和amdahl's law--阿姆达尔定律
scalability describes the ability to improve throughput or capacity when additional resource ...
有2396人浏览
2012-04-10 14:40
[本文是我对java concurrency in practice c10的归纳和总结. 转载请注明作者和出处, 如有谬误, 欢迎在评论中指正. ]
如果多个线程以不同的顺序持有多个锁, 可能发生死锁:
public class accounttrans {
public void transfermoney(account fromaccount, account toac ...
有2912人浏览
2012-04-10 10:08
[本文是我对java concurrency in practice 5.6的归纳和总结. 转载请注明作者和出处, 如有谬误, 欢迎在评论中指正. ]
几乎每一个应用都会使用到缓存, 但是设计高效的线程安全的缓存并不简单. 如:
public interface computable {
v compute(a arg) throws interrupt ...
有5738人浏览
2012-04-01 22:49
[本文是我对java concurrency in practice 5.5的归纳和总结. 转载请注明作者和出处, 如有谬误, 欢迎在评论中指正. ]
synchronizers
synchronizer是指那些根据状态协调线程的对象. blockingqueue就是一个典型的synchronizer: 当队列为空时, 取数据的消费者线程将被阻塞, 直到队列不为空; 当队列满时, 存入数据 ...
有2250人浏览
2012-04-01 22:44
[本文是我对java concurrency in practice 5.3的归纳和总结. 转载请注明作者和出处, 如有谬误, 欢迎在评论中指正. ]
生产者消费者模式
以缓冲区作为生产者和消费者之间沟通的桥梁: 生产者只负责生产, 将生产出来的数据存入缓冲区. 而消费者只负责消费, 不断的从缓冲区中取出数据进行处理.
生产者消费者模式是非常常用的, 因为应用该模式有效的解耦了生产者和消 ...
有4499人浏览
2012-03-31 17:32
- 专栏创建者:
- 创建时间:2012-04-06 13:24:04
- 专栏文章数:20篇
- 专栏被浏览:95216 次
本专栏热门文章
最新评论
博主应该把vector设定为全局变量,更加清晰一些
筑浪小子 评论了
筑浪小子 评论了
我的印象中就是1. 尽量不要同时持有多个锁.^_^
yuanliangding 评论了
yuanliangding 评论了
原来这个叫race condition哦。
yuanliangding 评论了
yuanliangding 评论了
awaitnanos。学到了一个技巧。可以在方法中操作直到有返回值了再返回。类似异步方法调用写得像是同 ...
yuanliangding 评论了
yuanliangding 评论了
hapjin 写道lz,请问下,“ 如果java中的锁不是可重入的,那么调用loggingwidget ...
wsong 评论了
wsong 评论了
lz,请问下,“ 如果java中的锁不是可重入的,那么调用loggingwidget对象的dosome ...
hapjin 评论了
hapjin 评论了
您好,请问下您的最后一个java示例中: public class onecashedvalue { ...
hapjin 评论了
hapjin 评论了
volatile 能保证 单个读/写的原子性
breadviking 评论了
breadviking 评论了
有些深奥,还有些看不懂。
逐客叫我 评论了
逐客叫我 评论了
第二段代码中的start、end要加上volatile修饰符
heipacker 评论了
heipacker 评论了