多线程
xiaxiaomao1981
华中科技大学毕业,十余年行业经验,曾带领团队完成cpn客户管理系统,并完成农业银行网站,乐途旅游网等网站的开发,在.net和java领域有深厚的积累,授课风格深入浅出,直指核心。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Cas详解
Cas也是线程同步的一种解决方案,很多人区分不清楚它和synchronized。 先看下这段代码: public class MyCas { private static int num = 0; public static void main(String[] args) throws InterruptedException { for (int i = 0...原创 2020-02-10 08:24:04 · 345 阅读 · 0 评论 -
ThreadLocal详解
在多线程应用程序中如果我们想让每个线程有一个自己对应的变量可以进行存取,不受其它线程的影响就可以使用ThreadLocal,而synchronized是通过加锁来保证一次只有一个线程能对共享变量进行修改。 来看一下ThreadLocal的使用: public class ThreadLocalDemo { ThreadLocal<Integer> threadLocal ...原创 2020-02-09 08:27:13 · 557 阅读 · 0 评论 -
volatile关键字
要想更好的理解volatile关键字,我们先来聊聊基于高速缓存的存储交互: 我们知道程序中进行计算的变量是存储在内存中的,而处理器的计算速度和内存的读取速度完全不在一个量级,区别犹如兰博基尼和自行车。 要让兰博基尼开一小段就停下来等会自行车显然不太合适,所以在处理器和内存之间加了一个高速缓存,高速缓存速度远高于内存,犹如奔驰,虽然和兰博基尼还有一定差距,每个处理器都对应一个高速缓存。 当...原创 2020-02-08 07:47:05 · 217 阅读 · 0 评论 -
synchronized 底层实现原理
Synchronized是Java并发编程的基础,也是面试的高频考点。 它的用法很独特,每一个对象都可以作为锁,很多人就很疑惑,它到底锁定的是什么呢? 要想真正弄明白这个问题就需要深入到Synchronized的实现机制,下面我用最易懂的方式来解析一下这个最难懂的关键字 Synchronized被称为同步锁,它的作用是保证一段代码在同一时间只能被一个线程执行,它是如何做到的呢? synch...原创 2020-02-07 07:40:35 · 548 阅读 · 0 评论
分享