当一个同步方法已经执行,线程能够调用对象上的非同步实例方法吗?
举一反三
- 同步方法在执行前需要获得一个锁。当同步方法是实例方法时,锁是在调用方法的对象上;当同步方法是静态(类)方法时,锁是在方法所在的类上。
- 一个线程在执行同步方法时,如果执行wait()方法,使本线程进入中断,就允许其它线程使用这个同步方法。
- 对于wait()方法,下面说法正确的是?() A: wait()方法的调用者是同步锁对象 B: wait()方法使线程进入等待状态 C: 调用同一锁对象的notify()或notifyAll()方法可以唤醒调用wait()方法等待的线程 D: 调用wait()方法的线程会释放同步锁对象
- 下列关于同步方法的描述中,正确的是( ) A: 同步方法在某一时刻只允许一个线程访问 B: 同步方法也有锁,它的锁就是当前调用该方法的对象 C: 同步方法也可以是静态方法 D: 同步方法可以节省资源,提高效率
- .线程新建后,可以调用run方法进入运行状态。B.如果两个线程需要调用同一个同步方法,那么一个线程调用该同步方法时,另一个线程必须等待。C.线程的目标对象中的run方法可能启动多次。D.默认情况下,所有线程的优先级都是5级。 A: 选项A B: 选项B C: 选项C D: 选项D