多线程
文章平均质量分 94
___是六月呀~
一只很菜的菜鸟在努力学java
展开
-
多线程之锁
提高锁性能 减少锁持有时间 减小锁粒度 用读写分离所代替独占锁 锁分离 锁粗化:把多个锁的操作整合成对锁的一次请求,减少对锁的请求的次数。 锁优化 锁偏向:对加锁的优化:如果一个线程获得了锁,那么锁就进入偏向模式。当这个线程再次请求锁事,无需再做任何同步操作。所以几乎没有锁竞争场合。 -XX:+UseBiastedLocking 开启偏向锁。 但是当在竞争激烈的场合,即每次都是不同的线程请求相同的锁,这时候偏向锁就会失败。 轻量级锁:偏向锁失败,线程不会立即挂起,而是使用轻量级锁进行优化。 ...原创 2021-08-11 15:55:15 · 63 阅读 · 0 评论 -
多线程知识点整理
多线程基础并发相关概念死锁饥饿活锁并发级别JMM:java的内存模型指令重排进程 VS 线程线程的生命周期 基础 并发相关概念 并行与并发: 并行:表示两个或多个任务一起执行; 并发:多个任务交替执行。 临界区 临界区表示一种公共资源或者共享数据,可以被多个线程使用,但每次只能有一个线程使用它。临界区一旦被占用,其他线程就必须等待这个资源的释放。 阻塞和非阻塞 阻塞:线程等待资源释放,就是被阻塞了。 非阻塞:没有一个线程可以妨碍其他线程的执行。 死锁 只两个或两个以上的线程在执行过程中,因为争夺原创 2021-08-10 15:22:04 · 100 阅读 · 0 评论