![](https://img-blog.csdnimg.cn/20210219213953885.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java并发编程
文章平均质量分 96
Java并发编程:学习、总结、有趣的问题
LSayhi
https://github.com/LSayhi
微信公众号:AI有点可ai
展开
-
并发编程(七):自定义线程池、ThreadPoolExecutor、任务调度线程池
并发编程(七):线程池、ThreadPoolExecutor、任务调度线程池本文目录并发编程(七):线程池、ThreadPoolExecutor、任务调度线程池一、自定义线程池1.实现步骤二、ThreadPoolExecutor1.线程池状态2.构造方法3.Executors类3.1 newFixedThreadPool3.2 newCachedThreadPool3.3 newSingleThreadExecutor4.提交任务5.关闭线程池三、异步模式:工作线程1.定义2.饥饿3.解决方案4. 预设线原创 2021-03-23 22:19:03 · 292 阅读 · 0 评论 -
并发编程(六):悲观锁与乐观锁、atomic常见类、Unsafe对象
并发编程(六):锁与无锁、CAS与volatile、atomic常见类、ABA问题、Unsafe底层本文目录并发编程(六):锁与无锁、CAS与volatile、atomic常见类、ABA问题、Unsafe底层一、Java内存模型(Java Memory Model)1.定义2.JMM与JVM3.JMM与硬件内存架构的关系4.JMM的体现二、可见性1.小例子:不会退出的循环2.解决方法3.思考4.可见性与原子性对比三、有序性1.重排序(1) 编译器的重排(2)处理器的指令重排(3)内存系统的重排2.解决方法原创 2021-03-18 22:42:28 · 283 阅读 · 0 评论 -
并发编程(五):Java内存模型、可见性、有序性、volatile原理、happen before原则
并发编程(四):wait/notify、保护性暂停、生产者消费者、活跃性本文目录并发编程(四):wait/notify、保护性暂停、生产者消费者、活跃性一、wait / notify1.为什么需要wait notify2.原理3.API4.wait 和 sleep不同点5.wait notify 改进上锁过程二、模式:保护性暂停(同步)1.介绍2.单任务版3.多任务版三、模式:生产者消费者(异步)1.介绍2.java实现一个线程间的生产者消费者模式四、提升并发度:加不同的锁1.小例子2.活锁3.饥饿4.死原创 2021-03-10 20:57:03 · 320 阅读 · 2 评论 -
并发编程(四):wait/notify、保护性暂停、生产者消费者、活跃性
并发编程(四):wait/notify、保护性暂停、生产者消费者、活跃性本文目录并发编程(四):wait/notify、保护性暂停、生产者消费者、活跃性一、wait / notify1.为什么需要wait notify2.原理3.API4.wait 和 sleep不同点5.wait notify 改进上锁过程二、模式:保护性暂停(同步)1.介绍2.单任务版3.多任务版三、模式:生产者消费者(异步)1.介绍2.java实现一个线程间的生产者消费者模式四、提升并发度:加不同的锁1.小例子2.活锁3.饥饿4.死原创 2021-03-05 19:40:40 · 182 阅读 · 0 评论 -
并发编程(三):线程安全问题分析、Synchronized使用、Synchronized底层原理及优化
并发编程(三):线程安全问题、Synschronized、线程安全分析、Synchronized原理本文目录并发编程(三):线程安全问题、Synschronized、线程安全分析、Synchronized原理一、线程安全问题1.Java小例子2.临界区3.竞态条件二、Synschronized使用1.加在对象上2.加在方法上3.线程八锁三、变量的线程安全分析1.成员变量和静态变量 分析2.局部变量 分析3.常见线程安全类3.1线程安全类的组合3.2不可变类的线程安全性4.例子:卖票问题、转账问题四、Syn原创 2021-02-26 17:08:39 · 203 阅读 · 2 评论