Class BalancedClientFuture<V>
- java.lang.Object
-
- org.apache.qpid.protonj2.client.futures.ClientFuture<V>
-
- org.apache.qpid.protonj2.client.futures.BalancedClientFuture<V>
-
- Type Parameters:
V- The type that result from completion of this Future
- All Implemented Interfaces:
java.util.concurrent.Future<V>,AsyncResult<V>
public class BalancedClientFuture<V> extends ClientFuture<V>
A more balanced implementation of a ClientFuture that works better on some platforms such as windows where the thread park and atomic operations used by a more aggressive implementation could result in poor performance.
-
-
Field Summary
-
Fields inherited from class org.apache.qpid.protonj2.client.futures.ClientFuture
CANCELLED, COMPLETING, error, FAILURE, INCOMPLETE, result, STATE_FIELD_UPDATER, SUCCESS, synchronization, waiting
-
-
Constructor Summary
Constructors Constructor Description BalancedClientFuture()Create a newBalancedClientFutureinstance with no assignedClientSynchronization.BalancedClientFuture(ClientSynchronization<V> synchronization)Create a newBalancedClientFutureinstance with the assignedClientSynchronization.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Vget()Vget(long amount, java.util.concurrent.TimeUnit unit)-
Methods inherited from class org.apache.qpid.protonj2.client.futures.ClientFuture
cancel, complete, failed, getResult, getState, isCancelled, isComplete, isDone, isFailed, isNotComplete, tryCancelTask
-
-
-
-
Constructor Detail
-
BalancedClientFuture
public BalancedClientFuture()
Create a newBalancedClientFutureinstance with no assignedClientSynchronization.
-
BalancedClientFuture
public BalancedClientFuture(ClientSynchronization<V> synchronization)
Create a newBalancedClientFutureinstance with the assignedClientSynchronization.- Parameters:
synchronization- theClientSynchronizationthat should be notified upon completion of this future.
-
-
Method Detail
-
get
public V get(long amount, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException, java.util.concurrent.ExecutionException, java.util.concurrent.TimeoutException
- Specified by:
getin interfacejava.util.concurrent.Future<V>- Specified by:
getin classClientFuture<V>- Throws:
java.lang.InterruptedExceptionjava.util.concurrent.ExecutionExceptionjava.util.concurrent.TimeoutException
-
get
public V get() throws java.lang.InterruptedException, java.util.concurrent.ExecutionException
- Specified by:
getin interfacejava.util.concurrent.Future<V>- Specified by:
getin classClientFuture<V>- Throws:
java.lang.InterruptedExceptionjava.util.concurrent.ExecutionException
-
-