GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing docs.ruby-lang.org — class Thread::Mutex - Documentation for Ruby 4.1 class Thread::Mutex
Example: semaphore = Thread::Mutex.new a = Thread.new { semaphore.synchronize { # access shared resource } } b = Thread.new { semaphore.synchronize { # access shared resource } }
{} Source# File thread_sync.rb, line 360 def lock Primitive.rb_mut_lock end Attempts to grab the lock and waits if it isn’t available. Raises
{} Source# File thread_sync.rb, line 343 def locked? Primitive.cexpr! %q{ RBOOL(mutex_locked_p(mutex_ptr(self))) } end Returns
{} Source# File thread_sync.rb, line 351 def owned? Primitive.rb_mut_owned_p end Returns {} Source# File thread_sync.rb, line 407 def sleep(timeout = nil) Primitive.rb_mut_sleep(timeout) end Releases the lock and sleeps When the thread is next woken up, it will attempt to reacquire the lock. Note that this method can wakeup without explicit Returns the slept time in seconds if woken up, or
{} Source# File thread_sync.rb, line 387 def synchronize raise ThreadError, "must be called with a block" unless defined?(yield) Primitive.rb_mut_synchronize end Obtains a lock, runs the block, and releases the lock when the block completes. See the example under
{} Source# File thread_sync.rb, line 369 def try_lock Primitive.rb_mut_trylock end Attempts to obtain the lock and returns immediately. Returns
{} Source# File thread_sync.rb, line 378 def unlock Primitive.rb_mut_unlock end Releases the lock. Raises |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |