# File mutex_m.rb, line 39
def Mutex_m.append_features(cl)
super
define_aliases(cl) unless cl.instance_of?(Module)
end
# File mutex_m.rb, line 29
def Mutex_m.define_aliases(cl)
cl.module_eval %{
alias locked? mu_locked?
alias lock mu_lock
alias unlock mu_unlock
alias try_lock mu_try_lock
alias synchronize mu_synchronize
}
end
# File mutex_m.rb, line 49
def mu_extended
unless (defined? locked? and
defined? lock and
defined? unlock and
defined? try_lock and
defined? synchronize)
Mutex_m.define_aliases(singleton_class)
end
mu_initialize
end
locking
# File mutex_m.rb, line 61
def mu_synchronize(&block)
@_mutex.synchronize(&block)
end