之前的部分都没有记录了,从这里开始,所看过的自己意识中并非理所当然的东西记录一下,以后再看看笔记就复习一遍。
4.5. Documenting Synchronization Policies
应该在文档中明确表明wether our class is thread safe,so our user or maintainer will be feel better.
Some library code like JDBC or Servlet framwork does not specific whether they are threadsafe, from a designer's perspective(not merely a user's), we can assume them does this, we can resonable assume,servlet must be designed to be accessed by multiple thread,otherwise it will be useless.
同样的道理DataSource.getConnection一般是线程安全的,但connection本身可能不适合被多线程同时使用。通常应用都有一个池来管理,或者把connection放到线程限制当中
5.1. Synchronized Collections
给已经线程安全的容器增加功能时,如vector,要用容器对象来做同步(容器对象本身作为自己内部同步的锁)
迭代的时候如果不同步并且迭代中被修改的话,是快速失败的,会抛出ConcurrentModificationException
注意隐式的迭代被调用,比如容器对象的toString调用时,会隐式迭代
synchronized collections 对所有的操作加锁,性能问题。
5.2. Concurrent Collections
在并发高性能,高scalability方面,是对Synchronized Collections的替代
The iterators returned by ConcurrentHashMap are weakly consistent instead of fail-fast.
CopyOnWriteArrayList在读取操作远远大于修改时非常适用,比如事件通知系统中的监听器列表。他在修改的时候会复制一个出来,而不修改原来的。
5.3. Blocking Queues and the Producer-consumer Pattern
One of the most common producer-consumer designs is a thread pool coupled with a work queue; this pattern is embodied in the Executor task execution framework that is the subject of Chapters 6 and 8.
分享到:
相关推荐
本笔记将深入探讨《Java Concurrency In Practice》这本书中的核心概念,结合Guava库的实际使用案例,帮助读者理解并掌握Java并发编程的精髓。 首先,我们来了解Java并发的基础知识。Java提供了丰富的并发工具类,...
《Java Concurrency in Practice》中文版笔记
Addison.Wesley.Java.Concurrency.in.Practice.May.2006.chm Agile Java 测试驱动开发的编程技术.pdf Java 8 默认方法和多继承.docx Java NIO通信框架在电信领域的实践.docx java.png javaconcurrencyinpractice.pdf...
java concurrent源码 Java7 核心类库源码解析 请直接查看.java : 通过JavaDoc+Test书写 ,方便链接到源码 Tracker 20181014 Java11正式发布并作为新的长期支持版本, 未来的应用会逐步迁移到Java11. 因此Java8以前的...
并发编程实战》阅读笔记 有关 Java 并发编程~ 别急别急,在重写它啦~,会补充一些新的内容进去,预计 2020/02 完成。 Content Java 并发编程基础 保证线程安全的两个角度 构造安全的并发应用程序 Java 并发高级主题 ...
Addison.Wesley.Java.Concurrency.in.Practice.May.2006.chm Agile Java 测试驱动开发的编程技术.pdf Java 8 默认方法和多继承.docx Java NIO通信框架在电信领域的实践.docx java.png javaconcurrencyinpractice.pdf...
书籍如《Effective Java》、《Java Concurrency in Practice》和《Head First Java》等,都是学习Java高级编程的经典之作。在线资源如Oracle的Java Tutorials和Stack Overflow上的问答,为解决实际问题提供了大量...
【Java并发编程实战】的阅读笔记-英文版:Java Concurrency in Practice官网源代码地址: : 1.主要是对源代码作一些补充并能实际运行一下(以junit的方式)2.添加了java8newfeatures,主要是写了几个java8的新...
Java Concurrency in Practice 对象的共享 对象的组合 基础构建模块 JavaGC监控与优化 垃圾回收机制 垃圾回收机制的监控 优化垃圾回收机制 Apache的MaxClients参数详解及其在Tomcat执行FullGC时的影响 JavaEE 浅析...
- **书籍**:《Effective Java》、《Java Concurrency in Practice》、《Clean Code: A Handbook of Agile Software Craftsmanship》等经典书籍深入讲解Java编程技巧和最佳实践。 - **社区与论坛**:Stack Overflow...