view src/EDU/oswego/cs/dl/util/concurrent/ThreadedExecutor.java @ 35:6f68e94c1fb8 default tip

Add CondensedStats monitoring utility, equivalent to vmstat
author Dominic Cleal <dominic-cleal@cdo2.com>
date Thu, 05 Aug 2010 11:07:25 +0100
parents 3dc0c5604566
children
line wrap: on
line source

/*
  File: ThreadedExecutor.java

  Originally written by Doug Lea and released into the public domain.
  This may be used for any purposes whatsoever without acknowledgment.
  Thanks for the assistance and support of Sun Microsystems Labs,
  and everyone contributing, testing, and using this code.

  History:
  Date       Who                What
  21Jun1998  dl               Create public version
  28aug1998  dl               factored out ThreadFactoryUser
*/

package EDU.oswego.cs.dl.util.concurrent;

/**
 * 
 * An implementation of Executor that creates a new
 * Thread that invokes the run method of the supplied command.
 * 
 * <p>[<a href="http://gee.cs.oswego.edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.html"> Introduction to this package. </a>]
 **/
public class ThreadedExecutor extends ThreadFactoryUser implements Executor {

  /** 
   * Execute the given command in a new thread.
   **/
  public synchronized void execute(Runnable command) throws InterruptedException {
    if (Thread.interrupted()) 
      throw new InterruptedException();

    Thread thread = getThreadFactory().newThread(command);
    thread.start();
  }
}