多线程
多线程
小白划水
这个作者很懒,什么都没留下…
展开
-
多线程之对共享变量的认识
共享变量测试 public class VolatileTest { private int b = 5555; public int getB() { return b; } public void setB(int b) { this.b = b; } public static void main(String[] args) throws InterruptedException { Vo原创 2022-05-29 21:04:33 · 226 阅读 · 0 评论 -
AQS同步队列
AQS原理分析 独占锁 AQS基础模型 /** * AQS抽象类 */ public abstract class AbstractQueuedSynchronizer extends AbstractOwnableSynchronizer{ //指向同步队列队头 private transient volatile Node head; //指向同步的队尾 private transient volatile Node tail; //同步状态,0代表锁未被占用,1代表锁已被占用 pri原创 2022-04-24 23:48:06 · 326 阅读 · 0 评论 -
ThreadLocal的使用
入门案例 package com.che.springbootdemo.thread; /** * @author cyh * @Description * @date 2022/4/11 20:57 * 在多线程下操作共享数据时,通过ThreadLocal来维护每个线程的数据安全 */ public class ThreadLocalTest { private ThreadLocal<String> threadLocal=new ThreadLocal<>原创 2022-04-11 22:20:03 · 203 阅读 · 0 评论 -
Monitor-对象头
Monitor工作原理 轻量级锁原创 2022-04-10 22:21:53 · 174 阅读 · 0 评论 -
Synchronized学习使用
使用方式 线程八锁原创 2022-04-10 21:56:09 · 114 阅读 · 0 评论 -
Java多线程-daemon守护线程
案例一: /** * 什么是守护线程? * 当 JVM 中不存在任何一个正在运行的非守护线程时,则 JVM 进程即会退出。 * 如果 JVM 中没有一个正在运行的非守护线程,这个时候,JVM 会退出。换句话说,守护线程拥有自动结束自己生命周期的特性,而非守护线程不具备这个特点。 * * 应用场景: * JVM 中的垃圾回收线程就是典型的守护线程,如果说不具备该特性,会发生什么呢? * 当 JVM 要退出时,由于垃圾回收线程还在运行着,导致程序无法退出,这就很尴尬了!!!由此可见,守护线程的重要原创 2021-12-22 14:15:01 · 471 阅读 · 0 评论 -
线程常用方法使用
/** * 验证当sleep时,线程被打断 * @throws InterruptedException */ @Test public void test1() throws InterruptedException { Thread t1 = new Thread(() -> { try { TimeUnit.SECONDS.sleep(2); S.原创 2022-04-10 00:35:27 · 309 阅读 · 0 评论