多线程与高并发
文章平均质量分 90
奋斗的蜗牛_Z99
这个作者很懒,什么都没留下…
展开
-
多线程和高并发(七) 线程池
多线程和高并发(一)多线程和高并发(二)| volatile关键字文章目录多线程和高并发(七) 线程池捕获线程的执行异常注入Hook钩子线程线程池什么是线程池JDK对线程池的支持核心线程池的底层实现BlockingQueue任务队列RejectedExecutionHandler拒绝策略ThreadFactory监控线程池扩展线程池优化线程池大小线程池死锁线程池中的异常处理ForkJoinPool 线程池保障线程安全的设计技术Java 运行时存储空间无状态对象不可变对象线程特有对象装饰器模式锁的优化及原创 2021-05-09 16:41:01 · 459 阅读 · 0 评论 -
多线程和高并发(六) ReentrantLock
多线程和高并发(一)多线程和高并发(二)| volatile关键字文章目录多线程和高并发(六) ReentrantLockReentrantReadWriteLock读写锁线程管理线程组创建线程组线程组的基本操作多线程和高并发(六) ReentrantLockReentrantReadWriteLock读写锁synchronized和ReentrantLock都是排他锁(独占锁),同一时间只允许一个线程执行同步代码块,安全但效率低。ReentranReadWriteLock读写锁是一种改进原创 2021-05-09 16:39:52 · 269 阅读 · 0 评论 -
多线程和高并发(五) ThreadLocal & Lock
多线程和高并发(一)多线程和高并发(二)| volatile关键字文章目录多线程和高并发(五) ThreadLocal & Lock线程间通信ThreadLocal的使用Lock显示锁锁的可重入性ReentrantLockReentrantLock锁的可重入性lockInterruptibly()方法tryLock()方法显示锁的等待/通知公平锁和非公平锁几个常用的方法多线程和高并发(五) ThreadLocal & Lock线程间通信ThreadLocal的使用Threa原创 2021-05-09 16:39:09 · 530 阅读 · 0 评论 -
多线程和高并发(四) 线程间通信
系列文章目录多线程和高并发(一)多线程和高并发(二)| volatile关键字文章目录系列文章目录多线程和高并发(四)| 线程间通信线程间通信等待/通知机制interrupt()方法会中断wait()方法notify和notifyAll方法wait(long)的使用通知过早生产者消费者模式多线程和高并发(四)| 线程间通信线程间通信等待/通知机制interrupt()方法会中断wait()方法当线程处于wait()等待状态时候,调用线程对象的interrupt()方法会中断线程,产生I原创 2021-05-07 09:20:28 · 259 阅读 · 0 评论 -
多线程和高并发(三) Compare And Swap
多线程和高并发(三)| Compare And Swap系列文章目录多线程和高并发(一)多线程和高并发(二)| volatile关键字文章目录多线程和高并发(三)| Compare And Swap系列文章目录线程同步CAS(Compare And Swap)原子变量类线程间的通信等待/通知机制什么是等待通知机制等待通知机制的实现线程同步CAS(Compare And Swap)是由硬件实现的,CAS可以将读改写(read - modify - write)这类的操作转化为原子操作。i原创 2021-05-06 23:48:43 · 493 阅读 · 1 评论 -
多线程和高并发(二)volatile关键字
线程同步线程同步机制简介线程同步机制是一套用于协调线程之间的数据访问的机制,该机制可以保障线程安全。Java平台提供的线程同步机制包括:锁,volatile关键字,final关键字,static关键字,以及相关API,例如Object.wait()等方法。锁概述线程安全问题的产生前提是多个线程访问共享数据。将多个线程对共享数据的并发访问转换为串行访问,即一个共享数据一次只能被一个线程访问,锁就是复用这种思路保障线程安全。**锁(Lock)**可以理解为共享数据的许可证,对于同一个许可证保护的共原创 2021-04-24 15:59:07 · 732 阅读 · 0 评论 -
多线程和高并发(一) Thread
多线程和高并发(一)多线程进程狭义上理解:是运行在电脑中的一个程序,一个进程包含多个线程,再操作系统中是以进程来分配虚拟存储空间,文件描述符等。线程是进程的一个执行单元,每个线程都有自己的线程栈,自己的寄存器环境,自己的线程本地存储。主线程和子线程JVM启动时候会创建一个线程执行main方法,所以main方法所在的线程是主线程,线程之间不独立,例如在主线程创建线程A,A即为主线程的子线程。串行,并发,并行三者传输速度为:串行 <= 并发 <= 并行并发:是一个核心运行多个线程原创 2021-04-12 17:20:02 · 908 阅读 · 0 评论