
java并发
文章平均质量分 86
亏贼Man
这个作者很懒,什么都没留下…
展开
-
volatile详解
在多线程环境下,为了提高性能,每个线程可能会在自己的工作内存中保持主内存的副本。如果一个变量不是用 volatile 声明的,那么可能一个线程在更新这个变量的值时,其它线程看到的还是旧值,因为更新后的值还没有被写回主内存,或者其它线程的工作内存中的副本还没有被更新。当一个变量被声明为 volatile 后,对这个变量的写操作会立即同步到主内存中,对这个变量的读操作会从主内存中读取,这就保证了变量在所有线程中的内存可见性。原创 2024-04-02 21:26:32 · 312 阅读 · 0 评论 -
Synchronized详解
是一个关键字,用于在多线程环境下实现同步,以控制对共享资源的并发访问。它可以保证在同一时刻,只有一个线程可以执行某个方法或代码块。原创 2024-04-02 21:25:39 · 576 阅读 · 0 评论 -
ThreadLocal源码解析
三个主要方法:get set remove讲三个方法前,现需要知道Thread,ThreadLocal,ThreadLocalMap三个之间的关系,首先ThreadLocalMap虽然是ThreadLocal中定义的静态内部类,但实际的 ThreadLocalMap 实例是作为 Thread 对象的一个字段存在的。这样设计的目的是允许每个线程存储自己独有的线程局部变量,而这些变量通过各自的 ThreadLocal 对象来访问。原创 2024-04-02 21:18:12 · 2069 阅读 · 0 评论