文章目录 1. 引入 2. 前导概念 2.1 同步与异步 2.2 互斥与并发 2.3 原子性操作 2.4 临界资源和临界区 临界资源 临界区 如何管理 3. 互斥锁 3.1 ...
文章目录 前言 一、Object类自带的方法 二、Condition接口 三、LockSupport 四、相关面试题 总结: 前言 三种让线程等待和唤醒的方法如下:...
ThreadLocal原理分析及内存泄漏 ThreadLocal的使用 ThreadLocal原理 set方法解析 replaceStaleEntry方法解析 expungeStaleEntry方法解析 cleanSomeSlo...
1、Java 中 final 关键字有什么用? final 可以用来修饰引用(基本数据类型、引用数据类型、类的成员变量)、方法、类,分别是...
创建三种线程的方式对比 使用实现Runnable、Callable接口的方式创建多线程。 优势 Java的设计是单继承的设计,如果使用继承Thread的方式实现多线程...
目录 前言 1. 乐观锁 VS 悲观锁 乐观锁 悲观锁 2. 轻量级锁 VS 重量级锁 轻量级锁 3. 自旋锁 VS 挂起等待锁 自旋锁 挂起等待锁 4. 读写锁 VS 互斥锁 5. 可...
前言 开始之前先提一句, JAVA的内置锁在退出临界区之后是会自动释放锁的, 但是ReentrantLock这样的显式锁是需要自己显式的释放的, 所以在加锁之后一定不要忘...
目录 1.rabbitmq如何避免消息丢失 (三个阶段) 2.如何保证消息的顺序性 3.如何保证消息不被重复消费 4.缓存与数据库的不一致性 5.redis的过...
1.分类描述 1.sleep() 休眠 2.suspend() 暂停和 resume() 继续 3.yield() 让步 就是我放弃本次执行,但继续排队,下一次有机会在执行。 4.wa...