首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java专栏
yuanhao
创建于2022-04-14
订阅专栏
Java并发编程、JVM等知识。
等 48 人订阅
共28篇文章
创建于2022-04-14
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Java并发编程 | 一文搞懂Java线程的生命周期
通用模型线程状态为:初始化,可运行,运行,休眠和终止。Java线程状态为:NEW,RUNNABLE,TERMINATED,以及BLOCKED WAITING TIMED_WAITING
小结篇:并发编程的问题
并发问题可以总结为安全性问题、活跃性问题和性能问题。安全性是通过解决3个源头来实现线程安全,活跃性要注意死锁、活锁和饥饿,性能问题要注意多使用无锁方案和减少锁持有的时间。
Java并发编程 | 使用"等待-通知"机制让CPU不再无效空转!
本章通过synchronized关键字配合wait()、notify()、notifyAll()来搞清楚等待-通知机制是啥以及其本质。
Java并发编程 | 如何使用一把锁保护多个资源
锁和其保护的对象关系是1:N,当受保护的资源没有联系时,可以细化锁,当资源之间有关系时,需要额外处理,防止出现自己的锁锁别人的资源情况。
Java并发编程 | 互斥锁解决原子性问题
解决原子性问题的法则是:对于共享变量的操作同一时刻只能有一条线程即互斥,而锁是实现互斥的最简单方法,synchronized编译自己加解锁,要明白锁和所保护的资源之间的关系。
Java并发编程 | 内存模型大展身手
Java内存模型是一套规则,主要用来禁用缓存和编译器优化,配合的有volatile和synchronized关键字,和6个Happens-Before规则。
Java并发编程 | 并发编程BUG的源头
并发编程Bug的源头:CPU缓存导致的可见性问题,线程切换导致的原子性问题,编译器优化导致的有序性问题
Java并发编程 | 并发编程的核心和本质
并发编程的核心思想:分工即把任何合理地安排给线程执行;同步即一个线程完成后通知后续线程开始;互斥是同一时刻,只允许一个线程访问共享变量。