AQS就是一个并发包的基础组件,用来实现各种锁,各种同步组件的。它包含了state
变量、加锁线程、等待队列等并发中的核心组件。
公平锁的策略,过来加锁的线程全部是按照先来后到的顺序,依次进入等待队列中排队的,不会盲目的胡乱抢占加锁,非常的公平。
Java
并发包里很多锁默认的策略都是非公平的,也就是可能后来的线程先加锁,先来的线程后加锁。
读写锁是非常适合读多写少的场景的,比如Spring Cloud Eureka
微服务注册中心里面的服务注册表。
AQS就是一个并发包的基础组件,用来实现各种锁,各种同步组件的。它包含了state
变量、加锁线程、等待队列等并发中的核心组件。
公平锁的策略,过来加锁的线程全部是按照先来后到的顺序,依次进入等待队列中排队的,不会盲目的胡乱抢占加锁,非常的公平。
Java
并发包里很多锁默认的策略都是非公平的,也就是可能后来的线程先加锁,先来的线程后加锁。
读写锁是非常适合读多写少的场景的,比如Spring Cloud Eureka
微服务注册中心里面的服务注册表。