
Java并发编程实战
文章平均质量分 92
Java并发编程实战学习笔记
EdSheeran乀
一个在编程路上慢慢前进的小菜鸡~
展开
-
7.取消与关闭
有时候希望提前结束任务或线程,例如用户取消操作,或者应用程序需要被快速关闭。而java对此没有提供任何机制来安全地终止线程。但它提供了中断,这是一种协作机制,能够使一个线程终止另一个线程的当前工作。这种协作式的方法是必要的,很少希望某个任务、线程或服务立即停止,因为这种立即停止会使共享的数据结构处于不一致的状态。相反,可以使用一种协作的方式:当需要停止时,首先清除当前正在执行的工作,然后再结束。这提供了更好的灵活性,因为任务本身的代码比发出取消请求的代码更清楚如何执行清除工作。...原创 2022-06-27 17:14:16 · 214 阅读 · 0 评论 -
6.任务执行
当围绕任务执行来设计应用程序结构时,第一步就是要找出清晰的任务边界。在理想情况下,各个任务之间是相互独立的:任务并不依赖于其他任务的状态、结果或边界效应。独立性有助于实现并发,因为如果存在足够多的处理资源,那么这些独立的任务都可以并行执行。为了在调度与负载均衡等过程中实现更高的灵活性,每项任务还应该表示应用程序的一小部分处理能力。......原创 2022-06-07 10:57:19 · 980 阅读 · 0 评论 -
5.基础构建模块
文章目录*基础构建模块**5.1同步容器类**5.1.1同步容器类的问题**5.1.2迭代器与`ConcurrentModificationException`**5.1.3隐藏迭代器**5.2并发容器**5.2.1`ConcurrentHashMap`**5.2.2额外的原子`Map`操作**5.2.3`CopyOnWriteArrayList`**5.3阻塞队列和生产者/消费者模式**5.3.1示例:桌面搜索**5.3.2串行线程封闭**5.3.3双端队列与工作密取**5.4阻塞方法与中断方法**5.5原创 2022-05-26 10:44:16 · 233 阅读 · 0 评论 -
4.对象的组合
文章目录*对象的组合**4.1设计线程安全的类**4.1.1收集同步需求**4.1.2依赖状态的操作**4.1.3状态的所有权**4.2实例封闭**4.2.1Java监视器模式**4.2.2示例:车辆追踪**4.3线程安全性的委托**4.3.1示例:基于委托的车辆追踪器**4.3.2独立的状态变量**4.3.3当委托失效时**4.3.4发布底层的状态变量**4.3.5示例:发布状态的车辆追踪器**4.4在现有的线程安全类中添加功能**4.4.1客户端加锁机制**4.4.2组合**4.5将同步策略文档化*对原创 2022-05-13 09:14:41 · 396 阅读 · 0 评论 -
3.对象的共享
文章目录*对象的共享**3.1可见性**3.1.1失效数据**3.1.2非原子的64位操作**3.1.3加锁与可见性**3.1.4`volatile`变量**3.2发布与逸出**安全的对象构造过程**3.3线程封闭**3.3.1Ad-hoc线程封闭**3.3.2栈封闭**3.3.3`ThreadLocal`类**3.4不变性**3.4.1`final`域**3.4.2示例:使用`volatile`类型来发布不可变对象**3.5安全发布**3.5.1不正确的发布:正确的对象被破坏**3.5.2不可变对象与初始原创 2022-05-06 10:33:05 · 543 阅读 · 0 评论 -
2.线程安全性
文章目录*线程安全性**2.1什么是线程安全性**2.2原子性**2.2.1竞态条件**2.2.2示例:延迟初始化中的竞态条件**2.2.3符合操作**2.3加锁机制**2.3.1内置锁**2.3.2重入**2.4用锁来保护状态**2.5活跃性与性能*线程安全性要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享的和可变的状态的访问。从非正式的意义上来说,对象的状态是指存储在状态变量(例如实例或静态域)中的数据。对象的状态可能包括其他依赖对象的域。共享意味着变量可以由多个线程同时原创 2022-04-28 11:52:26 · 478 阅读 · 0 评论 -
1.并发简介
文章目录*简介**1.1并发简史**1.2线程的优势**1.2.1发挥多处理器的强大能力**1.2.2建模的简单性**1.2.3异步事件的简化处理**1.2.4响应更灵敏的用户界面**1.3线程带来的风险**1.3.1安全性问题**1.3.2活跃性问题**1.3.3性能问题**1.4线程无处不在*简介1.1并发简史之所以在计算机中加入操作系统来实现多个程序的同时执行,主要是基于以下原因:资源利用率。当一个程序等待时,其他程序可以继续运行。公平性。不同的用户和程序对于计算机上的资源有着同等的使用原创 2022-04-26 09:36:07 · 162 阅读 · 0 评论