File: thwait.rb

# thwait.rb

Path: | thwait.rb
Last Update: | Sat Oct 15 23:44:28 AUS Eastern Standard Time 2005

      thwait.rb - thread synchronization class
          $Release Version: 0.9 $
          $Revision: 1.3 $
          $Date: 1998/06/26 03:19:34 $
          by Keiju ISHITSUKA(Nihpon Rational Software Co.,Ltd.)

—

     feature:
     provides synchronization for multiple threads.

     class methods:
     * ThreadsWait.all_waits(thread1,...)
       waits until all of specified threads are terminated.
       if a block is supplied for the method, evaluates it for
       each thread termination.
     * th = ThreadsWait.new(thread1,...)
       creates synchronization object, specifying thread(s) to wait.

     methods:
     * th.threads
       list threads to be synchronized
     * th.empty?
       is there any thread to be synchronized.
     * th.finished?
       is there already terminated thread.
     * th.join(thread1,...)
       wait for specified thread(s).
     * th.join_nowait(threa1,...)
       specifies thread(s) to wait.  non-blocking.
     * th.next_wait
       waits until any of specified threads is terminated.
     * th.all_waits
       waits until all of specified threads are terminated.
       if a block is supplied for the method, evaluates it for
       each thread termination.

### Required files

thread.rb e2mmap.rb

### Constants

ThWait | = | ThreadsWait

[Validate]