并发
文章平均质量分 95
wx: fulltilt8
这个作者很懒,什么都没留下…
展开
-
从Java多线程可见性谈Happens-Before原则
从Java多线程可见性谈Happens-Before原则Happens-Before是一个非常抽象的概念,然而它又是学习Java并发编程不可跨域的部分。本文会先阐述Happens-Before在并发编程中解决的问题——多线程可见性,然后再详细讲解Happens-Before原则本身。Java多线程可见性在现代操作系统上编写并发程序时,除了要注意线程安全性(多个线程互斥访问临界资源)以外,还要注意多线程对共享变量的可见性,而后者往往容易被人忽略。可见性是指当一个线程修改了共享变量的值,其原创 2021-07-08 01:57:36 · 125 阅读 · 2 评论 -
ThreadLocal原理和使用场景
ThreadLocal与线程成员变量还有区别,ThreadLocal该类提供了线程局部变量。这个局部变量与一般的成员变量不一样,ThreadLocal的变量在被多个线程使用时候,每个线程只能拿到该变量的一个副本,这是Java API中的描述,通过阅读API源码,发现并非副本,副本什么概念?克隆品? 或者是别的样子,太模糊。准确的说,应该是ThreadLocal类型的变量内部的...原创 2020-01-06 11:28:05 · 151 阅读 · 0 评论 -
Volatile关键词深度剖析
1背景12Volatile:易变的12.1小结23Volatile:不可优化的33.1小结44Volatile:顺序性44.1happens-before64.2小结75Volatile:Java增强86V...原创 2019-05-17 02:50:07 · 106 阅读 · 0 评论 -
比较jdk7,jdk1.8下的ConcurrentHashMap源码分析
1、ConcurrentHashMap跟HashMap,HashTable的对比2、ConcurrentHashMap原理概览3、ConcurrentHashMap几个重要概念4、ConcurrentHashMap几个重要方法5、ConcurrentHashMap的初始化6、ConcurrentHashMap的put操作详解7、ConcurrentHashMap的扩容...原创 2019-03-19 17:22:13 · 510 阅读 · 2 评论 -
深入理解Docker容器和镜像
【编者的话】本文用图文并茂的方式介绍了容器、镜像的区别和Docker每个命令后面的技术细节,能够很好的帮助读者深入理解Docker。如果你想和我或者更多Docker专家交流,可以加我微信453465325这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(image)之间的区别,并深入探讨容器和运行中的容器之间的区别。当我对Docker技术还...原创 2019-06-04 15:36:08 · 103 阅读 · 0 评论