当前位置: 首页 > 面试题库 >

在Object.wait()之前调用Object.notify()

姬天逸
2023-03-14
问题内容

如果没有线程正在等待,使用Object.wait(),任何来电Object.notify()Object.notifyAll()没有任何效果。我有一种情况,如果Object.notify()在等待集为空时调用,则后续调用Object.wait()不应将线程置于等待状态。如何做到这一点?信号量可能是我能想到的一种解决方案。有没有更优雅的解决方案?


问题答案:

这种情况似乎非常适合Semaphore。呼叫Semaphore.release()而不是notify()Semaphore.acquire()而不是等待。



 类似资料:
  • 我现在刚到Spring。我试图遵循调用PostConstruct和BeanPostProcessor的顺序。 根据我所学,以下是顺序:- null null SpringConfig文件foo.xml删除了beans标记上下文:component-scan base-package=“SpringTest” 回应 初始化MySpring构造函数 初始化ApplicationContext Post

  • 问题内容: 我对和有两个问题(及其相应的简历方法): 通常应使用哪一个? 哪一个性能更好? 使用over 有什么好处吗? 问题答案: 如果您是应用程序程序员,则不应使用这两种方法。 它们级别都太低,容易搞砸,不能在库外使用。 为什么不尝试使用诸如java.util.concurrent.locks之类的更高级别的构造? 回答您的问题。park(…)直接在线程上工作。它将线程作为参数并将其置于睡眠状

  • 问题内容: 问题 我正在使用内联函数定义设置反应 然后在DOM引用中未设置 我的理解是,回调应该在安装期间运行,但是在ref回调函数 之前* 调用添加语句揭示。 * 例如,我看过的其他代码示例在github上的讨论都表明相同的假设,应该在中定义的任何回调 之后调用,甚至在对话中也要说明 那么在所有的ref回调都执行完之后,componentDidMount是否被触发? 是。 我正在使用反应 15.

  • 我已经开始为一个简单的应用程序开发后端,并且我已经建立了一个数据库类(名为),所有文件都将与之通信。在我的中,我有以下内容: 它是一个,所以我可以从其他文件中访问。 在我的其他文件中,我有以下帮助可读性:(因为它是一个类,它将通过引用传递) 在我的课程中: 当我构建代码时,它构建得很好。 运行时,应用程序立即崩溃与。错误消息是: 我已尝试在类中的init函数上放置断点。它没有到达断点。 我已尝试将

  • 问题内容: 我有一个jQuery对话框打开,然后进行AJAX调用。我想这样做,以便如果关闭对话框或按下“取消”按钮,则取消AJAX调用,并且不调用其回调函数。我可以想到一些使用变量的方式,例如: 但是,从某种程度上来说,这对我来说很肮脏,并且实际上并没有阻止AJAX调用完成。是否有内置的方式来取消正在进行的AJAX呼叫? 问题答案: 好的,因此基于使用$ .get函数返回的XmlHttpReque