view src/EDU/oswego/cs/dl/util/concurrent/ThreadedExecutor.java @ 28:bc579f24eaf5

Added tag Version 2.1 for changeset 511648fa4d64
author Dan Creswell <dan.creswell@gmail.com>
date Mon, 04 Jan 2010 13:01:11 +0000
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();
  }
}