⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lockedexecutor.java

📁 一个很好的微工作流内核
💻 JAVA
字号:
/*  File: LockedExecutor.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*/package EDU.oswego.cs.dl.util.concurrent;/** * An implementation of Executor that  * invokes the run method of the supplied command within * a synchronization lock and then returns. *  * <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 LockedExecutor implements Executor {    /** The mutex **/  protected final Sync mutex_;  /**    * Create a new LockedExecutor that relies on the given mutual   * exclusion lock.    * @param mutex Any mutual exclusion lock.   * Standard usage is to supply an instance of <code>Mutex</code>,   * but, for example, a Semaphore initialized to 1 also works.   * On the other hand, many other Sync implementations would not   * work here, so some care is required to supply a sensible    * synchronization object.   **/   public LockedExecutor(Sync mutex) {    mutex_ = mutex;  }  /**    * Execute the given command directly in the current thread,   * within the supplied lock.   **/  public void execute(Runnable command) throws InterruptedException {    mutex_.acquire();    try {      command.run();    }    finally {      mutex_.release();    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -