<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -2,17 +2,13 @@ require 'thread'
 
 module Forkoff
   def version
-    '1.1.0'
+    '1.1.1'
   end
 
   def done
     @done ||= Object.new
   end
 
-  def ready
-    @ready ||= Object.new
-  end
-
   def default
     @default ||= { 'processes' =&gt; 2 }
   end
@@ -141,8 +137,7 @@ module Enumerable
     options = { 'processes' =&gt; Integer(options) } unless Hash === options
     n = Integer( options['processes'] || options[:processes] || Forkoff.default['processes'] )
     strategy = options['strategy'] || options[:strategy] || 'pipe'
-    p2c = Queue.new
-    c2p = Queue.new
+    q = SizedQueue.new(n)
     results = Array.new(n){ [] }
 
     #
@@ -156,8 +151,7 @@ module Enumerable
             Thread.current.abort_on_exception = true
 
             loop do
-              c2p.push( Forkoff.ready )
-              value = p2c.pop
+              value = q.pop
               break if value == Forkoff.done
               args, index = value
 
@@ -187,11 +181,10 @@ module Enumerable
         Thread.new do
           Thread.current.abort_on_exception = true
           each_with_index do |args, i|
-            ready = c2p.pop
-            p2c.push( [args, i] )
+            q.push( [args, i] )
           end
           n.times do |i|
-            p2c.push( Forkoff.done )
+            q.push( Forkoff.done )
           end
         end
 </diff>
      <filename>lib/forkoff.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>6df26115e88b742e599891541286dabc8dad52e0</id>
    </parent>
  </parents>
  <author>
    <name>ara.t.howard</name>
    <email>ara.t.howard@gmail.com</email>
  </author>
  <url>http://github.com/ahoward/forkoff/commit/b63f58a16dd3c12b13177af1e1c51af05278322e</url>
  <id>b63f58a16dd3c12b13177af1e1c51af05278322e</id>
  <committed-date>2009-10-12T09:32:17-07:00</committed-date>
  <authored-date>2009-10-12T09:32:17-07:00</authored-date>
  <message>use a SizedQueue instead of ready signal</message>
  <tree>6648f1291dce037a87469aa6429bb967132fe82a</tree>
  <committer>
    <name>ara.t.howard</name>
    <email>ara.t.howard@gmail.com</email>
  </committer>
</commit>
