【问题标题】:runnable calls notifyall to wake itself - javarunnable 调用 notifyall 来唤醒自己 - java
【发布时间】:2013-12-24 12:46:27
【问题描述】:

我有一个实现 CallableX 的类和一个实现 RunnableY 的类。

Y 有一个 X 的集合,当 X 的一个结束时,我想唤醒 YXY 作为私有字段,我可以使用Y.notifyAll()唤醒它?

【问题讨论】:

  • 你需要在 y 上同步才能调用 notify,
  • 当然,如果 y 是您同步的对象,并且如果没有其他等待,则在 y 同步。当你调用notifyAll时,如果有多个东西在同一个锁上等待,你无法知道哪个会被唤醒。

标签: java concurrency runnable callable


【解决方案1】:

如果你有Y作为X的私有成员,你可以直接调用Y中的方法。

Y.notifyAll() 将通知所有已在Y 的同一实例上调用wait() 的线程。

【讨论】:

    猜你喜欢
    • 2018-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多