On Mar 19, 2005, at 3:15 AM, Brian Candler wrote:

> class MyTest < Test::Unit::TestCase
>
>   BASEPID = $$
>
>   def teardown
>     # If we are a child process exiting, don't do any teardown
>     return unless BASEPID == $$
>
>     .. do stuff
>   end
> end

I've been tearing up rubicon in the past couple of days and noticed 
something similar that might help you:

     def teardown
       if $os != MsWin32 && $os != JRuby
         begin
           loop { Process.wait; $stderr.puts "\n\nCHILD REAPED\n\n" }
         rescue Errno::ECHILD
         end
       end
       super
     end


--
ryand-ruby / zenspider.com - Seattle.rb - 
http://www.zenspider.com/seattle.rb
http://blog.zenspider.com/ - http://rubyforge.org/projects/ruby2c