首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
并发
订阅
allenmitnick
更多收藏集
微信扫码分享
微信
新浪微博
QQ
8篇文章 · 0订阅
精通Java并发 - AQS
1. LockSupport 工具类 LockSupport工具类的主要作用是挂起和唤醒线程,是创建锁和其他同步类的基本线程阻塞原语,即很多锁和同步类的线程阻塞和唤醒都是通过LockSupport实现
volatile解决可见性和有序性
参考书籍: 《Java并发编程深度解析与实战》 -- 谭锋 什么是可见性 可见性问题的根源 cpu 的速度远远高于内存,但是cpu 执行的指令和数据都是来源于内存,所以在 cpu 在等待内存的数据时,
深入理解关键字volatile
Java的volatile关键字具有什么作用?为什么volatile修饰的变量可以保证可见性和有序性?为什么不能保证原子性?保证可见性和有序性的原理是什么?volatile有什么应用场景?
volatile 关键字与计算机底层的一些杂谈
volatile 是 Java 并发编程中一个非常重要,也是面试常问的一个技术点,用起来很简单直接修饰在变量前面即可,但是我们真的懂这个关键字吗?它在 JVM 底层,甚至在 CPU 层面到底是如何发挥
volatile解析
我在并发编程过程中经常会看到一个全局变量前面用volatile关键字进行修饰,于是去百度了一下这个关键字的用处,于是出现了: 锁???真的是这样吗? 那么我们今天就来深度看看volatile到底是什么
从源码层面解析yield、sleep、wait、park
Thread的yield()、sleep()方法、Object的wait()方法和Unsafe的park()方法,都能够阻塞当前线程,让出CPU执行权,那么它们底层实现上又有什么区别呢?本文将从JVM源码层面分别解析这几个方法的实现逻辑。 这里就比较清晰了,首先调用当前任务(线…
2022最新JUC+多线程面试题
Java中实现多线程有几种方法 创建线程的常用的几种方式: 继承Thread类 实现Runnable接口 (重写run方法,无返回值) 实现Callable接口( JDK1.5>=,重写call方法,
(一)玩命死磕Java内存模型(JMM)与Volatile关键字底层原理
引言 本篇文章结合我个人对Java内存模型的理解以及相关书籍资料为前提全面剖析JMM内存模型,本文的书写思路先阐述JVM内存模型、硬件与OS(操作系统)内存区域架构、Java多线程原理以及Java内存