当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby ConditionVariable类用法及代码示例


本文简要介绍ruby语言中 Thread::ConditionVariable类 的用法。

ConditionVariable 对象扩充类 Mutex 。使用条件变量,可以在临界区中间暂停,直到资源可用。

例子:

mutex = Thread::Mutex.new
resource = Thread::ConditionVariable.new

a = Thread.new {
   mutex.synchronize {
     # Thread 'a' now needs the resource
     resource.wait(mutex)
     # 'a' can now have the resource
   }
}

b = Thread.new {
   mutex.synchronize {
     # Thread 'b' has finished using the resource
     resource.signal
   }
}

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 ConditionVariable类。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。