--- !ruby/object:RDoc::RI::ClassDescription 
attributes: []

class_methods: 
- !ruby/object:RDoc::RI::MethodSummary 
  name: new
comment: 
- !ruby/struct:RDoc::Markup::Flow::P 
  :body: Mutex implements a simple semaphore that can be used to coordinate access to shared data from multiple concurrent threads.
- !ruby/struct:RDoc::Markup::Flow::P 
  :body: "Example:"
- !ruby/struct:RDoc::Markup::Flow::VERB 
  :body: "  require 'thread'\n  semaphore = Mutex.new\n\n  a = Thread.new {\n    semaphore.synchronize {\n      # access shared resource\n    }\n  }\n\n  b = Thread.new {\n    semaphore.synchronize {\n      # access shared resource\n    }\n  }\n"
constants: []

full_name: Mutex
includes: []

instance_methods: 
- !ruby/object:RDoc::RI::MethodSummary 
  name: lock
- !ruby/object:RDoc::RI::MethodSummary 
  name: locked?
- !ruby/object:RDoc::RI::MethodSummary 
  name: sleep
- !ruby/object:RDoc::RI::MethodSummary 
  name: try_lock
- !ruby/object:RDoc::RI::MethodSummary 
  name: unlock
name: Mutex
superclass: Object
