《Java并发编程实战》第五章 同步容器类 读书笔记
2023-09-11 14:14:43 时间
一、同步容器类
1. 同步容器类的问题线程容器类都是线程安全的。可是当在其上进行符合操作则须要而外加锁保护其安全性。
常见符合操作包括:
. 迭代
. 跳转(依据指定顺序找到当前元素的下一个元素)
. 条件运算
迭代问题能够查看之前的文章
二、并发容器
集合类型 | 非线程安全 | 线程安全 |
List | ArrayList | CopyOnWriteArrayList |
Set | SortedSet | ConcurrentSkipListSet |
Map | HashMap、SortedMap | ConcurrentHashMap、ConcurrentSkipListMap、 |
ConcurrentHashMap
CopyOnWriteArrayList
三、堵塞队列 - 生产者消费者模式
队列 - BlockingQueue
四、堵塞方法与中断方法
下面内容摘录自《温绍锦 - Java并发程序设计教程-》
// 第一种方式 Thread thread = new Thread("interrupt test") { public void run() { for (;;) { doXXX(); if (Thread.interrupted()) { break; } } } }; thread.start(); // 另外一种方式 Thread thread = new Thread("interrupt test") { public void run() { for (;;) { try { doXXX(); } catch (InterruptedException e) { break; } catch (Exception e) { // handle Exception } } } }; thread.start(); // 第三种方式 public void foo() throws InterruptedException { if (Thread.interrupted()) { throw new InterruptedException(); } }
程序应该对线程中断作出恰当的响应。
五、同步工具类
1. 闭锁 CountDownLatch
2. FutureTask
3. 信号量
4. 栅栏(Barrier)
六、构建高效且可伸缩的结果缓存
相关文章
- Java同步块
- [Java基础] java的守护线程与非守护线程
- Java 开发环境配置--eclipse工具进行java开发
- Java图片上传压缩处理
- java:Eclipse插件springsource-tool-suite的下载和安装
- Java实现 LeetCode 467 环绕字符串中唯一的子字符串
- Java实现 洛谷 P1115 最大子段和
- Java实现完美洗牌算法
- Java实现 蓝桥杯VIP 算法提高 邮票面值设计
- Java IO 之 InputStream源码
- 【JAVA】java中char类型数组用数组名打印结果不是地址值而是数组内容
- 【JAVA】java编译错误:编码UTF8/GBK的不可映射字符
- Atitit.提升软件Web应用程序 app性能的方法原理 h5 js java c# php python android .net
- atitit.泛型编程总结最佳实践 vO99 java c++ c#.net php
- Java中的Math函数常用方法总结
- 在 Java 9 的JShell中 跟Kotlin 的REPL中尽情体验函数式编程乐趣吧
- Java同步机制之Monitor监视器与syncrhoized实现原理
- Java并发编程:同步容器
- Java基本数据类型与位运算
- JAVA学习第十九课(java程序的异常处理 (二))
- JAVA集合类(代码手写实现,全面梳理)
- Java编程实现三种等级的扫雷游戏(完整版)
- 【JAVA面试必会】JMM高并发详解(java内存模型、JMM三大特征、volatile关键字 )
- 【java】Java并发编程--Java实现多线程的4种方式
- 【java】Java并发编程系列- volatile关键字(高并发中特实用哦)