JUC中各种锁的概念
作者:互联网
学习步骤:理论,代码,总结
公平锁
多个线程按申请锁的顺序来获取锁,从而执行,类似先来后到;
非公平锁
指多个线程不是按照申请锁的顺序获取锁,非公平锁线程上来就占有锁,失败再公平锁;
非公平锁会造成:只有一个线程工作,其他线程空闲的情况(线程饥饿);
可重入锁(递归锁)
线程获取可重入锁之后,可以在该线程里面的代码再获取到该锁,否则,如果是非可重入锁,再获取时就死锁了;
自旋锁
在多线程中,自旋的反义词是阻塞,
一般线程获取锁失败会阻塞,而自旋锁 线程,获取锁失败会继续执行程序尝试再获取锁,即多次循环获取锁的行为是自旋;
乐观锁
悲观锁
独占锁
写是独占锁
共享锁
读是共享锁
读锁
写锁
标签:重入,JUC,各种,概念,获取,线程,公平,自旋,失败 来源: https://www.cnblogs.com/yyjh/p/16529502.html