Java并发编程实战
u010675729
这个作者很懒,什么都没留下…
展开
-
《Java并发编程实战》第一章笔记
简介并发简史操作系统的出现使得计算机每次能运行多个程序,并且不同程序都在单独的进程中运行:操作系统为各个独立执行的进程分配各种资源,包括内存,文件句柄以及安全证书等。如果需要的话,在不同的进程之间可以通过一些粗粒度的通行机制来交换数据,包括:套接字、信号处理器、共享内存、信号量以及文件等。资源利用率公平性便利性线程允许在同一个进程中同事存在多个程序控制流。线程会共享进程范围内的...原创 2019-08-14 11:04:00 · 178 阅读 · 1 评论 -
《Java并发编程实战》第三章笔记
对象的共享要编写正确的并发程序,关键问题在于:在访问共享的可变状态时需要进行正确的管理。我们已经知道了同步代码块和同步方法可以确保以原子的方式执行操作,但一种常见的误解是,认为关健字synchronized只能用于实现原子性或者确定“临界区(Critical Section)”。同步还有另一个重要的方面:内存可见性(Memory Visibility)。我们不仅希望防止某个线程正在使用对象状...原创 2019-08-19 16:50:24 · 340 阅读 · 7 评论 -
《Java并发编程实战》第二章笔记
文章目录线程安全性什么是线程安全性原子性竞态条件示例:延迟初始化中的竞态条件复合操作线程安全性一个对象是否需要是线程安全的,取决于它是否被多个践程访问.这指的是在程序中访问对象的方式,而不是对象要实现的功能。要使得对象是线程安全的,需要采用同步机制来协同对对象可变状态的访问。如果无法实现协同,那么可能会导致数据破坏以及其他不该出现的结果。Java中的主要同步机制是关键字 synchroni...原创 2019-08-14 15:52:04 · 174 阅读 · 1 评论 -
《Java并发编程实战》第四章笔记
文章目录对象的组合设计线程安全的类收集同步需求依赖状态的操作状态的所有权实例封闭Java监视器模式示例:车辆追踪线程安全性委托示例:基于委托的车辆追踪器对象的组合设计线程安全的类在设计线程安全类的过程中,需要包含以下三个基本要素:找出构成对象状态的所有变量找出约束状态变量的不变性条件建立对象状态的并发访问管理策略// 使用Java监视器模式的线程安全计数器 @Threa...原创 2019-08-21 09:28:23 · 330 阅读 · 0 评论 -
《Java并发编程实战》第五章笔记
文章目录基础构建模块同步容器类同步容器类的问题迭代器与ConcurrentModificationException隐藏迭代器并发容器ConcurrentHashMap额外的原子Map操作CopyOnWriteArrayList阻塞队列和生产者 - 消费者模式示例:桌面搜索串行线程封闭双端队列与工作密取阻塞方法与中断方法同步工具类闭锁FutureTask信号量栅栏构建高效且可伸缩的结果缓存基础构...原创 2019-08-22 08:53:11 · 264 阅读 · 0 评论