README.rdoc in synchronizable-0.0.1 vs README.rdoc in synchronizable-0.0.2
- old
+ new
@@ -13,10 +13,12 @@
gem install synchronizable
== Examples
+=== Making an instance synchronizable
+
class Foo
def bar
end
def baz
@@ -25,17 +27,30 @@
foo = Foo.new
# the foo instance now has all methods synchronized / thread-safe
foo.extend(Synchronizable)
+=== Making a class synchronizable
+
# note that classes are objects in Ruby and can also be synchronized
class Bar
def self.foo
end
end
# only class/singleton methods will become synchronized
Bar.extend(Synchronizable)
+
+=== Utilizing the #synchronize method to protect a block
+
+ # the synchronize method takes a block and executes it
+ # in a thread-safe manner
+ s = "this is a test"
+ s.extend(Synchronizable)
+ s.synchronize do
+ s.gsub!('i', 'x')
+ s.slice!(0, 5)
+ end
== Note on Patches/Pull Requests
* Fork the project.
* Make your feature addition or bug fix.