java.lang.Object | ||
↳ | java.lang.Thread | |
↳ | java.util.concurrent.ForkJoinWorkerThread |
A thread managed by a ForkJoinPool
, which executes
ForkJoinTask
s.
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
.
[Expand]
Inherited Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() |
Protected Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Creates a ForkJoinWorkerThread operating in the given pool.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Returns the pool hosting this thread.
| |||||||||||
Returns the unique index number of this thread in its pool.
| |||||||||||
This method is required to be public, but should never be
called explicitly.
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Initializes internal state after construction but before
processing any tasks.
| |||||||||||
Performs cleanup associated with termination of this worker
thread.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() | |||||||||||
![]() | |||||||||||
![]() |
Creates a ForkJoinWorkerThread operating in the given pool.
pool | the pool this thread works in |
---|
NullPointerException | if pool is null |
---|
Returns the pool hosting this thread.
Returns the unique index number of this thread in its pool. The returned value ranges from zero to the maximum number of threads (minus one) that may exist in the pool, and does not change during the lifetime of the thread. This method may be useful for applications that track status or collect results per-worker-thread rather than per-task.
This method is required to be public, but should never be
called explicitly. It performs the main run loop to execute
ForkJoinTask
s.
Initializes internal state after construction but before
processing any tasks. If you override this method, you must
invoke 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.
Performs cleanup associated with termination of this worker
thread. If you override this method, you must invoke
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
|
---|