Class ExecutionService

java.lang.Object
java.util.concurrent.AbstractExecutorService
org.jgroups.blocks.executor.ExecutionService
All Implemented Interfaces:
AutoCloseable, Executor, ExecutorService

public class ExecutionService extends AbstractExecutorService
This is a jgroups implementation of an ExecutorService, where the consumers are running on any number of nodes. The nodes should run ExecutionRunner to start picking up requests.

Every future object returned will be a NotifyingFuture which allows for not having to query the future and have a callback instead. This can then be used as a workflow to submit other tasks sequentially or also to query the future for the value at that time.

Every callable or runnable submitted must be either Serializable, Externalizable, or Streamable. Also the value returned from a callable must Serializable, Externalizable, or Streamable. Unfortunately if the value returned is not serializable then a NotSerializableException will be thrown as the cause.

Since:
2.12.0
Author:
wburns