Modul speiger.src.collections
Klasse DoubleAsyncBuilder.BaseDoubleTask
java.lang.Object
speiger.src.collections.doubles.utils.DoubleAsyncBuilder.BaseDoubleTask
- Alle implementierten Schnittstellen:
Runnable,Future<Double>,RunnableFuture<Double>,DoubleTask
- Umschließende Klasse:
DoubleAsyncBuilder
Base Task of the Actions that can be performed.
Allows to simplify the actions that get executed.
-
Verschachtelte Klassen - Übersicht
Von Schnittstelle geerbte verschachtelte Klassen/Schnittstellen java.util.concurrent.Future
Future.State -
Konstruktorübersicht
Konstruktoren -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungvoidPauses the task, which lets the thread finish without completing the task.booleancancel(boolean cancelIfRunnning) doubleA Type Specific get method that allows to reduce (un)boxing of primtives.doubleWaits if necessary for at most the given time for the computation to complete, and then retrieves its result, if available.booleanbooleanisDone()booleanisPaused()Helper function to detect if the task is currently paused.booleanQuality of life function that allows to detect if no cancellation/exception was applied to this task and it completed on its own.voidpause()Pauses the task, which lets the thread finish without completing the task.voidresume()Continues the task if it wasn't already completed.voidrun()Von Klasse geerbte Methoden java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitVon Schnittstelle geerbte Methoden speiger.src.collections.doubles.functions.DoubleTask
get, getVon Schnittstelle geerbte Methoden java.util.concurrent.Future
exceptionNow, resultNow, state
-
Konstruktordetails
-
BaseDoubleTask
public BaseDoubleTask()
-
-
Methodendetails
-
run
public void run()- Angegeben von:
runin SchnittstelleRunnable- Angegeben von:
runin SchnittstelleRunnableFuture<Double>
-
cancel
public boolean cancel(boolean cancelIfRunnning) -
getDouble
Beschreibung aus Schnittstelle kopiert:DoubleTaskA Type Specific get method that allows to reduce (un)boxing of primtives. Waits if necessary for the computation to complete, and then retrieves its result.- Angegeben von:
getDoublein SchnittstelleDoubleTask- Gibt zurück:
- the computed result as primitive
- Löst aus:
InterruptedException- if the current thread was interrupted while waitingExecutionException- if the computation threw an exception
-
getDouble
public double getDouble(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException Beschreibung aus Schnittstelle kopiert:DoubleTaskWaits if necessary for at most the given time for the computation to complete, and then retrieves its result, if available.- Angegeben von:
getDoublein SchnittstelleDoubleTask- Parameter:
timeout- the maximum time to waitunit- the time unit of the timeout argument- Gibt zurück:
- the computed result as primitive
- Löst aus:
InterruptedException- if the current thread was interrupted while waitingExecutionException- if the computation threw an exceptionTimeoutException- if the wait timed out
-
isCancelled
public boolean isCancelled()- Angegeben von:
isCancelledin SchnittstelleFuture<Double>
-
isDone
public boolean isDone() -
isPaused
public boolean isPaused()Beschreibung aus Schnittstelle kopiert:DoubleTaskHelper function to detect if the task is currently paused.- Angegeben von:
isPausedin SchnittstelleDoubleTask- Gibt zurück:
- true if paused
-
isSuccessful
public boolean isSuccessful()Beschreibung aus Schnittstelle kopiert:DoubleTaskQuality of life function that allows to detect if no cancellation/exception was applied to this task and it completed on its own.- Angegeben von:
isSuccessfulin SchnittstelleDoubleTask- Gibt zurück:
- true if it was properly completed
-
pause
public void pause()Beschreibung aus Schnittstelle kopiert:DoubleTaskPauses the task, which lets the thread finish without completing the task. Tasks are written in the way where they can pause without any issues. This won't be instant, as this function is applied asynchronous and doesn't check if the thread paused. So make sure it had the time to pause.- Angegeben von:
pausein SchnittstelleDoubleTask
-
awaitPausing
public void awaitPausing()Beschreibung aus Schnittstelle kopiert:DoubleTaskPauses the task, which lets the thread finish without completing the task. Tasks are written in the way where they can pause without any issues. This won't be instant, as this function is applied asynchronous. It will await the pausing of the task.- Angegeben von:
awaitPausingin SchnittstelleDoubleTask
-
resume
public void resume()Beschreibung aus Schnittstelle kopiert:DoubleTaskContinues the task if it wasn't already completed. This is done by resubmitting the task to the executor provided.- Angegeben von:
resumein SchnittstelleDoubleTask
-