内容简介 · · · · · ·
《JAVA并发编程实践》既能够成为读者的理论支持,又可以作为构建可靠的、可伸缩的、可维护的并发程序的技术支持。《JAVA并发编程实践》并不仅仅提供并发API的清单及其机制,还提供了设计原则、模式和思想模型,使我们能够更好地构建正确的、性能良好的并发程序。《JAVA并发编程实践》适合于具有一定Java编程经验的程序员、希望了解Java SE 5以及6在线程技术上的改进和新特性的程序员,以及Java和并发编程的爱好者。
豆瓣成员常用的标签(共57个) · · · · · ·
喜欢读"JAVA并发编程实践"的人也喜欢 · · · · · ·
按有用程度 按页码先后 最新笔记
-
1---3章
1.2线程的优点,GUI提高用户响应,服务器提高资源利用和吞吐率,有效利用多核心cpu,单线程提高I/O吞吐量 2.1修复线程安全,1不要跨线程共享 2变量设置不可变3使变量同步 2.3.2,重进入,是一个线程可以多次进入一个锁,考虑到继承时,子类重载父类方法,2方法均有锁,如果不可以重进,那么子类调用super.父类方法将会陷入死锁。 3.1加锁可以保证可见性和原子性;volatile变量只能保证可见性 只有满足一下条件才能适合vola... (更多)1.2线程的优点,GUI提高用户响应,服务器提高资源利用和吞吐率,有效利用多核心cpu,单线程提高I/O吞吐量2.1修复线程安全,1不要跨线程共享 2变量设置不可变3使变量同步2.3.2,重进入,是一个线程可以多次进入一个锁,考虑到继承时,子类重载父类方法,2方法均有锁,如果不可以重进,那么子类调用super.父类方法将会陷入死锁。3.1加锁可以保证可见性和原子性;volatile变量只能保证可见性 只有满足一下条件才能适合volatile 1 写入变量并不依赖变量的当前值;或者能够确保只有单一线程修改变量的值 2 变量不需要与其他的状态变量共同参与不变约束。 3 访问变量时,没有其他原因需要加锁构建线程安全的实践 3.2使用工厂方法防止this引用在构造器期间逸出 3.3线程封闭 :Ad-hoc线程限制,栈限制,ThreadLocal 3.4不可变性:final域 3.5对象安全发布 安全发布模式:通过静态初始化器初始化对象的引用,将它的引用存储到volatile或者AtomicReference;将它的引用存储到正确创建的对象的final域中,或者将它的引用存储到由锁正确包含的域中。 3.5.5发布可变对象必要条件依赖于对象的可变性:不可变对象可以通过任意机制发布,高效不可变对象必须要完全发布,可变对象必须要安全发布,同事必须要线程安全或者被锁保护。3.5.6安全地共享对象: 线程策略:一个线程限制的对象,通过限制在线程中,而被线程独占,且有占有他的线程才能修改它。 共享只读:一个共享的只读对象,在没有额外同步的情况下,可以被多个线程并发访问,但是任何线程都不能修改它,共享只读对象包括可变对象与高效不可变对象。 共享线程安全:一个线程安全的对象在内部进行同步,所以其他线程无需额外同步,就可以通过公共接口随意的访问它。 被守护的对象:一个被守护的对象只能通过特定的锁来访问,被守护的对象包括哪些被线程安全的对象封装的对象,和已知被特定的锁保护起来的已发布对象。 (收起)2011-11-27 23:38:00 回应
-
第三章 共享对象
JackChu (与时消息 与时偕行 与时俱进)
本章应该是使用共享对象的注意点吧: 1、可见性 线程不安全的罪魁手 2、发布对象 发布对象的时候 就可能escape 3、对象不变性 不变对象都是线程安全的 4、安全发布 To publish an object safely, both the reference to the object and the object's state must be made visible to other threads at the same time. A properly constructed object can be safely published by: Initia... (更多)本章应该是使用共享对象的注意点吧:1、可见性 线程不安全的罪魁手2、发布对象 发布对象的时候 就可能escape3、对象不变性 不变对象都是线程安全的4、安全发布
(收起)To publish an object safely, both the reference to the object and the object's state must be made visible to other threads at the same time. A properly constructed object can be safely published by: Initializing an object reference from a static initializer; Storing a reference to it into a volatile field or AtomicReference; Storing a reference to it into a final field of a properly constructed object; or Storing a reference to it into a field that is properly guarded by a lock
2011-10-12 10:23:26 回应
-
1---3章
1.2线程的优点,GUI提高用户响应,服务器提高资源利用和吞吐率,有效利用多核心cpu,单线程提高I/O吞吐量 2.1修复线程安全,1不要跨线程共享 2变量设置不可变3使变量同步 2.3.2,重进入,是一个线程可以多次进入一个锁,考虑到继承时,子类重载父类方法,2方法均有锁,如果不可以重进,那么子类调用super.父类方法将会陷入死锁。 3.1加锁可以保证可见性和原子性;volatile变量只能保证可见性 只有满足一下条件才能适合vola... (更多)1.2线程的优点,GUI提高用户响应,服务器提高资源利用和吞吐率,有效利用多核心cpu,单线程提高I/O吞吐量2.1修复线程安全,1不要跨线程共享 2变量设置不可变3使变量同步2.3.2,重进入,是一个线程可以多次进入一个锁,考虑到继承时,子类重载父类方法,2方法均有锁,如果不可以重进,那么子类调用super.父类方法将会陷入死锁。3.1加锁可以保证可见性和原子性;volatile变量只能保证可见性 只有满足一下条件才能适合volatile 1 写入变量并不依赖变量的当前值;或者能够确保只有单一线程修改变量的值 2 变量不需要与其他的状态变量共同参与不变约束。 3 访问变量时,没有其他原因需要加锁构建线程安全的实践 3.2使用工厂方法防止this引用在构造器期间逸出 3.3线程封闭 :Ad-hoc线程限制,栈限制,ThreadLocal 3.4不可变性:final域 3.5对象安全发布 安全发布模式:通过静态初始化器初始化对象的引用,将它的引用存储到volatile或者AtomicReference;将它的引用存储到正确创建的对象的final域中,或者将它的引用存储到由锁正确包含的域中。 3.5.5发布可变对象必要条件依赖于对象的可变性:不可变对象可以通过任意机制发布,高效不可变对象必须要完全发布,可变对象必须要安全发布,同事必须要线程安全或者被锁保护。3.5.6安全地共享对象: 线程策略:一个线程限制的对象,通过限制在线程中,而被线程独占,且有占有他的线程才能修改它。 共享只读:一个共享的只读对象,在没有额外同步的情况下,可以被多个线程并发访问,但是任何线程都不能修改它,共享只读对象包括可变对象与高效不可变对象。 共享线程安全:一个线程安全的对象在内部进行同步,所以其他线程无需额外同步,就可以通过公共接口随意的访问它。 被守护的对象:一个被守护的对象只能通过特定的锁来访问,被守护的对象包括哪些被线程安全的对象封装的对象,和已知被特定的锁保护起来的已发布对象。 (收起)2011-11-27 23:38:00 回应
-
第三章 共享对象
JackChu (与时消息 与时偕行 与时俱进)
本章应该是使用共享对象的注意点吧: 1、可见性 线程不安全的罪魁手 2、发布对象 发布对象的时候 就可能escape 3、对象不变性 不变对象都是线程安全的 4、安全发布 To publish an object safely, both the reference to the object and the object's state must be made visible to other threads at the same time. A properly constructed object can be safely published by: Initia... (更多)本章应该是使用共享对象的注意点吧:1、可见性 线程不安全的罪魁手2、发布对象 发布对象的时候 就可能escape3、对象不变性 不变对象都是线程安全的4、安全发布
(收起)To publish an object safely, both the reference to the object and the object's state must be made visible to other threads at the same time. A properly constructed object can be safely published by: Initializing an object reference from a static initializer; Storing a reference to it into a volatile field or AtomicReference; Storing a reference to it into a final field of a properly constructed object; or Storing a reference to it into a field that is properly guarded by a lock
2011-10-12 10:23:26 回应
-
1---3章
1.2线程的优点,GUI提高用户响应,服务器提高资源利用和吞吐率,有效利用多核心cpu,单线程提高I/O吞吐量 2.1修复线程安全,1不要跨线程共享 2变量设置不可变3使变量同步 2.3.2,重进入,是一个线程可以多次进入一个锁,考虑到继承时,子类重载父类方法,2方法均有锁,如果不可以重进,那么子类调用super.父类方法将会陷入死锁。 3.1加锁可以保证可见性和原子性;volatile变量只能保证可见性 只有满足一下条件才能适合vola... (更多)1.2线程的优点,GUI提高用户响应,服务器提高资源利用和吞吐率,有效利用多核心cpu,单线程提高I/O吞吐量2.1修复线程安全,1不要跨线程共享 2变量设置不可变3使变量同步2.3.2,重进入,是一个线程可以多次进入一个锁,考虑到继承时,子类重载父类方法,2方法均有锁,如果不可以重进,那么子类调用super.父类方法将会陷入死锁。3.1加锁可以保证可见性和原子性;volatile变量只能保证可见性 只有满足一下条件才能适合volatile 1 写入变量并不依赖变量的当前值;或者能够确保只有单一线程修改变量的值 2 变量不需要与其他的状态变量共同参与不变约束。 3 访问变量时,没有其他原因需要加锁构建线程安全的实践 3.2使用工厂方法防止this引用在构造器期间逸出 3.3线程封闭 :Ad-hoc线程限制,栈限制,ThreadLocal 3.4不可变性:final域 3.5对象安全发布 安全发布模式:通过静态初始化器初始化对象的引用,将它的引用存储到volatile或者AtomicReference;将它的引用存储到正确创建的对象的final域中,或者将它的引用存储到由锁正确包含的域中。 3.5.5发布可变对象必要条件依赖于对象的可变性:不可变对象可以通过任意机制发布,高效不可变对象必须要完全发布,可变对象必须要安全发布,同事必须要线程安全或者被锁保护。3.5.6安全地共享对象: 线程策略:一个线程限制的对象,通过限制在线程中,而被线程独占,且有占有他的线程才能修改它。 共享只读:一个共享的只读对象,在没有额外同步的情况下,可以被多个线程并发访问,但是任何线程都不能修改它,共享只读对象包括可变对象与高效不可变对象。 共享线程安全:一个线程安全的对象在内部进行同步,所以其他线程无需额外同步,就可以通过公共接口随意的访问它。 被守护的对象:一个被守护的对象只能通过特定的锁来访问,被守护的对象包括哪些被线程安全的对象封装的对象,和已知被特定的锁保护起来的已发布对象。 (收起)2011-11-27 23:38:00 回应
-
第三章 共享对象
JackChu (与时消息 与时偕行 与时俱进)
本章应该是使用共享对象的注意点吧: 1、可见性 线程不安全的罪魁手 2、发布对象 发布对象的时候 就可能escape 3、对象不变性 不变对象都是线程安全的 4、安全发布 To publish an object safely, both the reference to the object and the object's state must be made visible to other threads at the same time. A properly constructed object can be safely published by: Initia... (更多)本章应该是使用共享对象的注意点吧:1、可见性 线程不安全的罪魁手2、发布对象 发布对象的时候 就可能escape3、对象不变性 不变对象都是线程安全的4、安全发布
(收起)To publish an object safely, both the reference to the object and the object's state must be made visible to other threads at the same time. A properly constructed object can be safely published by: Initializing an object reference from a static initializer; Storing a reference to it into a volatile field or AtomicReference; Storing a reference to it into a final field of a properly constructed object; or Storing a reference to it into a field that is properly guarded by a lock
2011-10-12 10:23:26 回应
书评 · · · · · · (共17条) 我来评论这本书
热门评论 最新评论
中文版的翻译者就是个罪犯
-
- 学习机器人(为人好辩,不得已,不得已) 英文版还是不错的,但是中文版的译者典型的没有技术功底,介绍上说什么专家,我日,他妈狗屁,翻译的非常差劲,有些句子都不通顺,都不知道自己去理解,直接就放在书上,你丫有没有良知,书籍是什么,是希望,是神圣的,你们这些译者简直就是在犯罪 ,不过要是英文功底不好,还是建议买本看吧,谁让你英文水平不如他们呢...... (7回应)2010-05-29 8/8有用
看过的讲并发编程的最清晰的书
-
- 阿拉丁的灯 这本书名为《Java并发编程实践》有些抹杀了它的价值,其中并非只讲述了Java的多线程设施,对一般的并发编程的rationale也有相当透彻的阐述。之前看过各种线程库,pThread, Boost Thread, Java Thread, Qt Thread,感觉Java的线程模型还是相对比较清晰的。只要能读懂一点Ja...... (1回应)2008-10-20 4/4有用
java并发编程的力作
-
- 阿丹(从现在起,做一个幸福的人) 终于读完,对于原著英文版来说,绝对是力荐的。看看作者列表,一个个响亮的名字,这本书的价值就不言而喻了。可贵的是书中不仅仅是详细介绍了jdk5引入的concurrent包的使用和基本原理,并且对线程安全性的设计、性能、死锁和可伸缩性的讨论也蕴含着丰富实践经验。中文版翻译的一般,不过并发本来就是个比较难以准确翻译的...... (2回应)2007-09-17 4/4有用
翻译的确实不咋滴,语句生涩。
-
- yatasoft 仅仅表示对翻译书的质量不满,太多的生涩句子,更无法达到信达雅。 极度怀疑是谷歌翻译。 读此书中文版,如喝一碗香喷喷的汤,里面夹杂着苍蝇,不喝对不起自己,喝亦对不起自己。 还好是技术文章,要是文艺作品,估计就闹笑话了。...... (1回应)2011-11-27
Java Concurrency in Practice
-
- 涅瓦纳(一个沉默的观影者与读书人) 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了 我看过了......2011-08-26 来自 Addison-Wesley Professional2006版
每个Javaer都应该读的一本书
-
- Warren(站在巨人的肩膀) 建议大家还是读原版,原版的用语还是比较清新自然,容易读懂的。 本书不适合初学者,初学者还是把JAVA的”顺序编程“了解好了再来看此书,否则你会迷失在并发的世界里。读此书之前你最好先读读Josh Bloch的<<Effective Java2>> 每个Javaer都应该好好读读......2010-12-31 来自 Addison-Wesley Professional2006版
"JAVA并发编程实践"的论坛 · · · · · ·
| 机工版《Java并发编程实战》即将出版 | 来自何艳 | 2012-02-13 | |
| 看起来有点困难 | 来自liuxinglanyue | 2010-11-05 | |
| 错过后又重来 | 来自明阳春晓 | 2010-04-19 | |
| 对方妙, 韩锴二位铭记于心 | 来自jTux | 2 回应 | 2011-05-24 |
| 大师之作! | 来自饭配稀 | 2009-08-05 |
> 浏览更多话题
- 机械工业出版社华章公司版 京东网上商城 RMB 54.60
- 加入购书单 多本比价 批量购买 已在购书单
这本书的其他版本有售 · · · · · ·
这本书的其他版本 · · · · · · ( 全部3 )
- Addison-Wesley Professional版 2006-5-19 / 67人读过 / 有售
- 机械工业出版社华章公司版 2012-2 / 0 / 有售
以下豆列推荐 · · · · · · (全部)
- 多核与并行编程参考书目 (NullPointer)
- Java修炼之道 (威廉他)
- 并行與分布式計算相關 (七月狄奥尼索斯)
- 程序员该读的书 (塔卡日)
- 并行与并发 (TerryLee)
谁读这本书?
喜欢这本书的人常去的小组 · · · · · ·

- InfoQ中文站 (1000)

- 设计模式 (912)

- Erlang (1030)

- MongoDB (2146)

- 产品管理 (167)

- china-pub网上书店 (779)

- Thinking In Java (2143)

- Hadoop China (891)
喜欢这本书的人关注的活动 · · · · · ·
订阅关于JAVA并发编程实践的评论:
feed: rss 2.0











