首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
多线程
订阅
Johnny同学67068
更多收藏集
微信扫码分享
微信
新浪微博
QQ
20篇文章 · 0订阅
三个线程顺序打印ABC?我有十二种做法!
三个线程顺序打印ABC?一次带来十二种做法,彻底掌握Java多线程同步和通信机制。快来看看吧!总有一种你不知道的。
并发的核心:CAS 是什么?Java8是如何优化 CAS 的?
大家可能都听说说 Java 中的并发包,如果想要读懂 Java 中的并发包,其核心就是要先读懂 CAS 机制,因为 CAS 可以说是并发包的底层实现原理。 今天就带大家读懂 CAS 是如何保证操作的原子性的,以及 Java8 对 CAS 进行了哪些优化。 学会多线程的同学应该都…
啃碎并发(二):Java线程的生命周期
当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。在线程的生命周期中,它要经过 新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Dead)5种状态。尤其是当线程启动以后,它不可能一直"霸占"着CPU独…
《Java多线程面试题》系列-创建线程的三种方法及其区别
1. 创建线程的三种方法及其区别 程序中存在2个线程,分别为主线程main和自定义的线程Thread-0。 调用firstThread.start();,run()方法体中的代码并没有立即执行,而是异步执行的。 可以看出,使用这种方式和继承Thread类的运行结果是一样的。 可…
您有一份ThreadLocal完全解析手册
ThreadLocal是jdk中一个非常重要的工具,它可以控制堆内存中的对象只能被指定线程访问,如果你经常阅读源码,基本在各大框架都能发现它的踪影。而它最经典的应用就是事务管理,同时它也是面试中的常客。 调用ThreadLocal的get方法。 获取当前线程t1. 获取t1的成…
java并发编程系列:牛逼的AQS(下)
看完了AQS中的底层同步机制,我们来简单分析一下之前介绍过的ReentrantLock的实现原理。先回顾一下这个显式锁的典型使用方式: ReentrantLock首先是一个显式锁,它实现了Lock接口。可能你已经忘记了Lock接口长啥样了,我们再回顾一遍: 也就是当一个线程因为…
解析ThreadLocal
ThreadLocal是在开发中相对比较常见的工具类了,可以在多线程环境下保证线程安全,其基本原理就是给每一个对象都分配一个属于当前线程的私有对象,这样线程之间拿到的对象就不会相互冲突了。 可以想象成,如果多个人公用一个厕所的时候,因为厕所的一些限制,有很多的人都不能冒然的使用…
手动造一个线程池(Java)
本次自己实现一个简单的线程池,主要是为了后续看ThreadPool的源码做准备的,是从别人的代码中改进的,从看别人的源码中学到一些东西,所以特意把这篇文章写出来,方便以后自己去回顾自己是如何学习。当然也希望分享出来可以对别人产生良好的影响! 在自己实现一个线程池之前,首…