在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。有可能,会造成优先级反转或者饥饿现象。对于Java 对于可重入锁又名递归锁,是指在同一个线程在外层方法获取锁的时候,在进入内层方法会自动获取锁。自旋锁是采用让当前线程不停地的在循环体内执行实现的,当循环的条件被其他线程改变时 才能进入临界区。如下使用了CAS原子操作,lock函数将owner设置为当前线程,并且预测原来的值为空。unlock函数将owner设置为null,并且预测值为当前线程。但当线程数不停增加时,性能下降明显,因为每个线程都需要执行,占用CPU时间。

Java中的锁分类的详细介绍

Java中的锁分类的详细介绍

Java中的锁分类的详细介绍