![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
高并发
张侦毅
The Minute You Think Of Giving Up, Think Of The Reason Why You Held On So Long.
展开
-
线程安全策略与安全发布
文章目录线程安全策略线程安全策略种类不可变对象线程封闭同步容器并发容器CopyOnWriteArrayListCopyOnWriteArraysetConcurrentSkipListSetConcurrentHashMapConcurrentSkipListMap安全发布对象线程安全策略线程安全策略种类 线程安全策略大致上有如下几种方式:尽量使用不可变对象尽量使用线程封闭尽量使用...原创 2019-08-19 21:04:15 · 257 阅读 · 0 评论 -
Synchronized关键字
文章目录Synchronized关键字说明实例方法静态方法实例方法中的代码块静态方法中的代码块Synchronized用例Synchronized关键字说明 Java中的同步代码块用Synchronized关键字来标记。在Java中的一个同步代码块有时是同步在不同的对象上的。在相同的对象上,在同一时间内所有的同步代码块中只有一个线程在执行。所有其它的线程都在试图进入同步代码块时被阻塞,直到同...原创 2019-08-24 17:01:43 · 235 阅读 · 0 评论 -
Volatile关键字
文章目录Volatile关键字说明变量的可见性问题Java volatile可视性保证完整volatile可见性保证指令重新排序的挑战Java volatile关键字的Happens-Before保证volatile并不总是足够的什么时候使用volatile是足够的volatile关键字性能方面的考虑Volatile关键字说明 Java volatile关键字用于将Java变量标记为“存储在...翻译 2019-08-25 11:15:03 · 206 阅读 · 0 评论 -
Java内存模型
文章目录Java内存模型(Java Memory Model,JMM)Java内存模型(Java Memory Model,JMM)基本概念JMM运行原理计算机内部硬件架构计算机内部硬件的基本概念计算机内部硬件的运作原理Java内存模型(JMM)与计算机硬件架构之间的关联关系Java虚拟机内存模型(JVM)与计算机硬件架构之间的对应关系Java内存模型(JMM),线程与计算机硬件架构之间的运行原理...原创 2019-08-15 21:36:44 · 335 阅读 · 0 评论 -
Java内存中定义的同步操作和基本规则
文章目录8种基本操作对应的同步规则8种基本操作lock(锁定) 作用于主内存的变量,把一个变量标识为一条线程独占状态。unlock(解锁) 作用域主内存的变量,把一个处于锁定状态的变量释放出来,释放后的变量才可以被其他线程锁定read(读取) 作用于主内存的变量,把一个变量值从主内存传输到线程的工作内存中,以便随后的load动作使用load(载入) 作用于...原创 2019-08-16 11:29:05 · 427 阅读 · 0 评论 -
线程安全
文章目录线程安全性定义线程安全类的特点线程安全类举例原子性Synchronized各种原子性锁的对比可见性SynchronizedVolatile有序性Happens-Before原则线程安全性定义 当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些进程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的。线程安全...原创 2019-08-18 15:28:56 · 189 阅读 · 0 评论 -
ThreadLocal
文章目录ThreadLocal简介ThreadLocal使用创建ThreadLocal访问ThreadLocal给ThreadLocal设置初始值ThreadLocal的完整使用用例ThreadLocal简介 ThreadLocal线程封闭:每个Thread线程内部都有一个map,这个map是以线程本地对象作为key,以线程的变量副本作为Value。同时这个map是由TreadLoal来维护...翻译 2019-08-28 22:05:46 · 245 阅读 · 3 评论