【问题标题】:using monitor to solve consumer/producer使用监视器解决消费者/生产者
【发布时间】:2016-04-23 14:59:01
【问题描述】:

在使用监视器解决消费者/生产者问题的常见模式中,为什么总是使用 notify/notifyall 语句,即使仅当数组中的元素数从零变为一或从 n 变为 n 时才使用它是有意义的- 1.按照几乎所有文献中对它的描述方式,它最终导致相当大比例的通知调用最终产生零效应,这意味着只是浪费资源。还是我在这里遗漏了一些重要的东西?

【问题讨论】:

    标签: synchronization monitor notify consumer producer


    【解决方案1】:

    这样写模式比每次都检查数组更容易。此外,notify all 不会浪费资源。我认为,当没有线程等待信号时,自己制作 if 语句与调用 notify/notifyAll 应该是一样的。我想,优化是在幕后进行的。

    【讨论】:

      猜你喜欢
      • 2016-08-08
      • 1970-01-01
      • 2010-12-14
      • 2023-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多