public class ForkJoinWorkerThread extends Thread
ForkJoinPool, which executes
ForkJoinTasks. This class is subclassable solely for the sake of adding functionality -- there are no overridable methods dealing with scheduling or execution. However, you can override initialization and termination methods surrounding the main task processing loop. If you do create such a subclass, you will also need to supply a custom
ForkJoinPool.ForkJoinWorkerThreadFactory to
use it in a
ForkJoinPool.
Thread.State , Thread.UncaughtExceptionHandler MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY| Modifier | Constructor and Description |
|---|---|
protected |
ForkJoinWorkerThread(ForkJoinPool
Creates a ForkJoinWorkerThread operating in the given pool.
|
| Modifier and Type | Method and Description |
|---|---|
ForkJoinPool |
getPool()
Returns the pool hosting this thread.
|
int |
getPoolIndex()
Returns the unique index number of this thread in its pool.
|
protected void |
onStart()
Initializes internal state after construction but before processing any tasks.
|
protected void |
onTermination(Throwable
Performs cleanup associated with termination of this worker thread.
|
void |
run()
This method is required to be public, but should never be called explicitly.
|
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yieldprotected ForkJoinWorkerThread(ForkJoinPoolpool)
pool - the pool this thread works in
NullPointerException - if pool is null
public ForkJoinPoolgetPool()
public int getPoolIndex()
protected void onStart()
super.onStart() at the beginning of the method. Initialization requires care: Most fields must have legal default values, to ensure that attempted accesses from other threads work correctly even before this thread starts processing tasks.
protected void onTermination(Throwableexception)
super.onTermination at the end of the overridden method.
exception - the exception causing this thread to abort due to an unrecoverable error, or
null if completed normally
public void run()
ForkJoinTasks.
run in interface
Runnable
run in class
Thread
Thread.start() ,
Thread.stop() ,
Thread.Thread(ThreadGroup, Runnable, String)