Issue #7087 has been updated by kosaki (Motohiro KOSAKI).


At least, this is intentional. condtion variable and monitor have different inspiration source.
condition variable is based on POSIX CV and monitor is based on Java monitor semantics. To be
honest, I'm not familiar Java's conditon variable. Could you please explain the detail of your
suggestion? Which semantics do you hope?

 
----------------------------------------
Bug #7087: ::ConditionVariable#wait does not work with Monitor because Monitor#sleep does not exist
https://bugs.ruby-lang.org/issues/7087#change-29793

Author: rklemme (Robert Klemme)
Status: Open
Priority: Low
Assignee: 
Category: 
Target version: 
ruby -v: ruby 1.9.3p194 (2012-04-20) [i686-linux]


See program attached to bug #7086: timeout_4 always throws:

ERROR: method "timeout_4": #<NoMethodError: private method `sleep' called for #<Monitor:0x87e49f8>>

$ irb19 -r monitor
irb(main):001:0> Monitor.new.method(:sleep)
=> #<Method: Monitor(Kernel)#sleep>
irb(main):002:0> Monitor.instance_methods.grep /sleep/
=> []


-- 
http://bugs.ruby-lang.org/