Java 等等,从同步上下文通知方法
我知道这是一个重复的问题。但我无法理解的解释。 我想用一个很好的例子来清楚地理解它。谁能帮忙吗Java 等等,从同步上下文通知方法,java,Java,我知道这是一个重复的问题。但我无法理解的解释。 我想用一个很好的例子来清楚地理解它。谁能帮忙吗 “为什么我们从同步上下文调用wait(),notify()方法”。当我们在线程中使用同步时,这意味着我们对该对象进行了锁定,并且该对象一次只能由一个线程使用,以避免各种并发问题 wait()和notify()方法仅在同步上下文中使用 wait方法暂停当前线程的工作,并释放它在任何对象上持有的锁,以便其他线程可以使用该同步对象 当其他线程完成其工作时,它调用notify方法,该方法使第一个线程再次获得对
“为什么我们从同步上下文调用wait(),notify()方法”。当我们在线程中使用同步时,这意味着我们对该对象进行了锁定,并且该对象一次只能由一个线程使用,以避免各种并发问题 wait()和notify()方法仅在同步上下文中使用 wait方法暂停当前线程的工作,并释放它在任何对象上持有的锁,以便其他线程可以使用该同步对象 当其他线程完成其工作时,它调用notify方法,该方法使第一个线程再次获得对象的锁并恢复其工作 您可以很容易地从网络上获得示例。我们主要使用wait()和notify()或notifyAll()方法进行线程间通信 一个线程在检查条件后正在等待,例如,在生产者-消费者示例中,如果缓冲区已满,生产者线程正在等待,消费者线程在通过消费元素在缓冲区中创建空间后通知生产者线程。调用notify()或notifyAll()会向单个或多个线程发出条件已更改的通知,一旦通知线程离开同步块,所有等待的线程都会争夺它们正在等待的对象锁,幸运线程在重新获取锁后从wait()方法返回并继续。让我们将整个操作分步骤进行,以查看Java中wait()和notify()方法之间存在争用条件的可能性,我们将使用product Consumer线程示例来更好地理解场景:
HTH.如果您不想同步,等待并通知并不意味着什么。如果你不使用它们来同步,它们是无效的。我知道,先生。但我想问的是,从同步上下文中调用它们的原因是什么。此项是重复项,可以在此处得到充分回答:或者您可以提供此链接-