欢迎来到Zgxh的博客
11
06
8.volatile 关键字 8.volatile 关键字
8. volatile8.0 为什么存在内存可见性问题 -> 缓存一致性问题可见性是指某线程修改了一个变量的值,新值对于其他线程是立即可见的。 为了提高代码执行速度,CPU 先把资源从内存加载到 CPU 缓存中(L1, L2等),但操
06
AQS AQS
11. AQSAQS,AbstractQueuedSynchronizer,抽象队列同步器,是一个抽象类。 是用来构建锁和同步器的框架。基于 AQS 实现的锁: ReentrantLock ReentrantReadWriteLock C
06
进程与线程 进程与线程
0. 进程与线程进程是应用程序在某块独立内存上的运行活动,是系统进行资源分配的基本单位。各个进程之间互不干扰,包括程序段、数据、PCB。 程序段:程序运行的代码; 数据段:程序运行期的相关数据; PCB 进程控制块:描述进程的基本情况和运
06
06
10.CAS 与 原子操作 10.CAS 与 原子操作
10. CAS 与 原子操作10.1 原子性原子操作就是最小的不可拆分的操作,操作一旦开始,就不能被打断,直到操作完成。 要么全部成功,要么全部失败。 原子操作能保证线程安全性。 10.1.1 Java 中的原子类java.util.c
06
06
2.线程组 与 优先级 2.线程组 与 优先级
2. 线程组 与 优先级2.1 线程组 ThreadGroup线程组是一个树状的结构,每个线程组下面可以有很多线程或者线程组。 线程依赖于线程组而存在。 线程组可以统一控制线程的优先级和检查线程的权限。 线程组中的线程只允许访问自己所在线
06
Java 锁分类 Java 锁分类
Java 中的锁 Java 中的并发包: java.util.concurrent , 又叫 JUC。 1. 乐观锁 与 悲观锁 1.1 乐观锁乐观锁总是假设对共享资源的访问没有冲突,线程可以不停地执行,无需加锁,也无需等待。 一旦多个线程
06
9.Java 对象锁 9.Java 对象锁
9. 锁Java中的锁都是对象锁,Class 类是特殊的 Java 对象,所以类锁也是对象锁。 每个类只有一个 Class 对象,类锁就是 Class 对象的锁。 为什么任意一个 Java 对象都能成为锁对象?对象派生自 Object,
06
4.线程间通信 4.线程间通信
4. 线程间通信4.1 锁与同步JAVA 中的锁都是对象锁,是基于对象的。 4.1.1 线程同步线程同步是指约束线程按照一定的顺序执行。 线程同步可以通过锁 synchronized 来实现: public class ObjectLock
06
Java 线程池 Java 线程池
12. 线程池 Thread Pool12.1 线程池简介线程池 Thread Pool 是一种基于池化思想管理线程的工具,经常出现在多线程服务器中。 如数据库连接池、httpClient连接池。 Java 中的线程池是 ThreadPo
06
2 / 4