Java并发编程
是发生上下文切换时线程保留的锁。 当我们调用wait()时,线程会放弃锁,当有上下文切换时会发生什么Java并发编程,java,Java,是发生上下文切换时线程保留的锁。 当我们调用wait()时,线程会放弃锁,当有上下文切换时会发生什么 谢谢是的,在上下文切换期间会保留锁。事实上,这就是锁的全部意义 当线程调用wait时,它将放弃锁。当wait返回时,会重新获得锁,因此您可以保证当控件返回到线程时,它会持有您期望的所有锁。调用wait()的线程将挂起,直到其他线程调用对象上的notify*()。此时,当另一个上下文切换发生时,wait()调用将返回,等待的线程将立即尝试重新获取锁,然后再继续。+1,但对于并行处理器,锁还承担支持
谢谢是的,在上下文切换期间会保留锁。事实上,这就是锁的全部意义
当线程调用
wait
时,它将放弃锁。当wait返回时,会重新获得锁,因此您可以保证当控件返回到线程时,它会持有您期望的所有锁。调用wait()
的线程将挂起,直到其他线程调用对象上的notify*()
。此时,当另一个上下文切换发生时,wait()
调用将返回,等待的线程将立即尝试重新获取锁,然后再继续。+1,但对于并行处理器,锁还承担支持跨并行进程/线程互斥的额外责任。i、 上下文切换不是并行化的要求。无论哪种方式,“上下文切换”都不是一个非常面向Java的概念。Java线程并没有要求发生上下文切换。