我觉得这里的资源从更大的方面可以理解为cpu的资源,当一个线程调用wait和sleep方法后,这个线程就不再具有cpu的资源,不再具有执行权了,直到被其他线程调用同一个对象的notify方法和sleep的时间到了之后才可以再次去获取cpu的资源。释放锁的意思是,一个线程在一个同步方法中wait之后,其他线程就可以拿到这个锁,进方法内部去执行代码,sleep方法不释放锁,一个线程在一个同步方法中sleep后,其他线程拿不到同步锁,只能等sleep的方法苏醒过来出了同步,释放锁之后,其他线程才能拿到同步锁。我的理解,不对的地方,请指教。
|