1 /* 2 * jDTAUS Core SPI 3 * Copyright (C) 2005 Christian Schulte 4 * <cs@schulte.it> 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 19 * 20 */ 21 package org.jdtaus.core.lang.spi; 22 23 /** 24 * Manages asynchronous executions. 25 * <p>jDTAUS Core SPI {@code Executor} specification to be used by 26 * implementations to perform operations asynchronously.</p> 27 * 28 * @author <a href="mailto:cs@schulte.it">Christian Schulte</a> 29 * @version $JDTAUS: Executor.java 8641 2012-09-27 06:45:17Z schulte $ 30 * @see org.jdtaus.core.container.Container 31 */ 32 public interface Executor extends ExceptionHandler 33 { 34 //--Executor---------------------------------------------------------------- 35 36 /** 37 * Executes a given {@code Runnable} asynchronously. 38 * <p>This method will notify any registered {@code ExceptionListener}s 39 * about exceptions thrown by the given {@code Runnable}'s {@code run()} 40 * method.</p> 41 * 42 * @param runnable the {@code Runnable} to execute asynchronously. 43 * 44 * @throws NullPointerException if {@code runnable} is {@code null}. 45 */ 46 void executeAsynchronously( Runnable runnable ); 47 48 //----------------------------------------------------------------Executor-- 49 }