Java之并发工具类
2022-06-30 16:36:47 11 举报
AI智能生成
Java之并发工具类
作者其他创作
大纲/内容
为了线程安全(从底层原理分类)
互斥同步
使用各种互斥同步的锁
synchronized
ReenreantLock
ReadWriteLock
使用同步的工具类
Collections.synchronizedList
Vector
非互斥同步
atomic包,原子类
Atomic * 基本类型原子类
AtomicInteger 整型原子类
AtomicLong 长整型原子类
AtomicBoolean 布尔型原子类
Atomic * Array 数组类型原子类(数组里的元组保证原子性)
AtomicIntegerArray
AtomicLongArray
AtomicReferenceArray
Atomic * Reference 引用类型原子类
AtomicReference
AtomicStampedReference
引用类型原子类升级,带时间戳,可以解决ABA问题
AtomicMarkableReference
Atomic * FieldUpdater 升级原子类
Atomic*FiledUpdater等升级自己的变量
AtomicIntegerFieldUpdater 原子更新整型字段的更新器
AtomicLongFieldUpdater 原子更新长整型字段的更新器
Adder加法器
LongAdder
DoubleAdder
Accumulator累加器
LongAccumulater
DoubleAccumulater
结合互斥和非互斥同步
线程安全的并发容器
ConcurrentHahsMap
CopyOnWriteArrayList
并发队列
阻塞队列
ArrayBlockingQueue
LinkedBlockingQueue
PriorityBlockingQueue
SynchronizedQueue
DelayedQueue
TransferQueue
非阻塞队列
ConcurrentLinkedQueue
ConcurrentSkipListMap、ConcurrentSkipListSet
无同步方案、不可变
final关键字
线程封闭
ThreadLocal
栈封闭
为了线程安全(从使用者角度分类)
避免共享变量
线程封闭
ThreadLocal
栈封闭
共享变量,但加以限制和处理
互斥同步
使用各种互斥同步锁
Synchronized
Lock接口相关锁
final关键字
成熟工具类
线程安全的并发容器
ConcurrentHashMap
CopyOnWriteArrayList
并发队列
ConcurrentSkipListmap和ConcurrentSkipListSet
使用同步工具类
atomic包,原子类
Atomic * 基本类型原子类
AtomicInteger 整型原子类
AtomicLong 长整型原子类
AtomicBoolean 布尔型原子类
Atomic * Array 数组类型原子类(数组里的元组保证原子性)
AtomicIntegerArray
AtomicLongArray
AtomicReferenceArray
Atomic * Reference 引用类型原子类
AtomicReference
AtomicStampedReference
引用类型原子类升级,带时间戳,可以解决ABA问题
AtomicMarkableReference
Atomic * FieldUpdater 升级原子类
Atomic*FiledUpdater等升级自己的变量
AtomicIntegerFieldUpdater 原子更新整型字段的更新器
AtomicLongFieldUpdater 原子更新长整型字段的更新器
Adder加法器
LongAdder
DoubleAdder
Accumulator累加器
LongAccumulater
DoubleAccumulater
为了方便管理线程、提高效率
线程池相关
Executor
Executors
ExecutorService
常见线程池
FixedThreadPool
CachedThreadPool
ScheduledThreadPool
SingleThreadExecutor
ForkJoinPool
获取子线程的运行结果
Callable
Future
FutureTask
为了线程之间配合,来满足业务逻辑
CountDownLatch
CyclicBarrier
Semaphore
Condition
Exchanger
Phaser
0 条评论
下一页