Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
多线程(七)锁策略 (乐观锁,悲观锁,读写锁,自旋锁,可重入锁)
目录 一 乐观锁和悲观锁 1 乐观锁的理解 2 悲观锁的理解 二 读写锁 1 什么是读写锁 2 读写锁的三种状态 3 读写锁的实现 三 公平锁和非公平锁 四 可重入锁 1 可重入锁 2 可重入锁 VS 自旋锁 五 cas实现和synchro
操作系统多线程
Java
JavaEE
多线程(三)Thread 类及常见方法
目录 一 Thread类的几个属性 属性 状态 getState 属性 ID和Name getId 和getName 属性 优先级 getPriority 属性 是否守护线程 isDaemon 属性 是否存活 isAlive 二 启动一个线
操作系统多线程
Java
JavaEE
多线程(四)线程的状态及生命周期
目录 一 线程的状态 新建 初始 就绪 可运行 运行 阻塞 死亡 二 线程的状态转移 NEW RUNNABLE TERMINATED 状态的转移 yield 方法 让出 CPU执行权 三 线程的生命周期 一 线程的状态 NEW 安排了工作
操作系统多线程
Java
JavaEE
多线程(六)-sleep和wait方法的区别
目录 一 sleep和wait方法的区别 二 wait方法 wait方法的使用 wait 结束等待的条件 三 notify和notifyAll方法 notify 方法只是唤醒某一个等待的线程 notifyAll方法可以一次唤醒所有的等待线程
操作系统多线程
JavaEE
Java
多线程(五)线程的不安全原因及解决方案
目录 一 什么是线程安全 二 线程不安全的原因 1 修改共享数据 2 原子性 3 内存可见性 4 指令重排序 三 解决线程安全方案 volatile 解决内存可见性和指令重排序 通过synchronized锁实现原子性操作 一 什么是线程安
操作系统多线程
Java
JavaEE