锁池与等待池
2021-08-07418
锁池和等待池
每个对象都会有锁池和等待池
--当对象的锁被释放就会在锁池中竞争出一个线程去获得该对象的锁,并且进去runnable的状态
获取cputimeslice之后便可进入running的状态
--当线程执行完running的状态且暂时不需要调用该对象是可以调用该对象的wait()方法并释对象锁,并进入等待池
--当线程调用对象的notify,会在等待池中随机将一个线程放入该对象的锁池当中,如果调用notify'all所有在等待池中的线程都会进入锁池
--一个线程想要调用一个对象的synchronized方法,但是这个方法目前被别的线程占用,所以这个时候这个线程进入可以直接进入该对象的锁池
下一篇:Java锁