public interface Fiber
The Fiber
interface is similar to the core Java language
Thread
class. The Fiber
class is used
to define a working context, which is the basic feature of a
Thread
. The differences end there since the
Thread
class is part of the core language and can only be
extended since it is a concrete class.
The Fiber
concept is used to represent an implementation
defined execution context outside of the core Java language. It provides a
very loose definition of what and how a Fiber
should behave.
This gives a great deal of implementation independence to the implementing
classes.
For example, the Fiber
interface could be used to represent a
one-to-one mapping of a Java Thread
. It could be used to
represent a thread pool where multiple threads are grouped as one
Fiber
unit. Additionally, it could be used to defined a new
execution environment where multiple Runnable elements are
multiplexed over a one or more threads, where the Runnables far
exceed the core Java threads.
Modifier and Type | Field and Description |
---|---|
static int |
RUNNING
This state is used to define the normal runtime condition of a
Fiber . |
static int |
START_PENDING
This is the initial
Fiber state. |
static int |
STARTING
This state is used to define when a
Fiber has begun the
Initialization process. |
static String[] |
STATUS_NAMES
The string names that correspond to the states of the fiber.
|
static int |
STOP_PENDING
This state is used to denote when the
Fiber is terminating
processing. |
static int |
STOPPED
This state represents the final resting state of a
Fiber . |
Modifier and Type | Method and Description |
---|---|
String |
getName()
This method is used to return the name of the
Fiber . |
int |
getStatus()
This method is used to get the current status of the
Fiber . |
void |
start()
This method is used to start the initialization process of the
Fiber , which should eventually transition to a
RUNNING status. |
void |
stop()
This method is used to stop a currently running
Fiber . |
static final String[] STATUS_NAMES
static final int START_PENDING
Fiber
state. When the
Fiber
begins it startup process it will transition to the
STARTING
state. A Fiber
in a start pending
state has not begun any of the initialization process.static final int STARTING
Fiber
has begun the
Initialization process. Once the initialization process is completed the
Fiber
will transition to a RUNNING
status.static final int RUNNING
Fiber
. When a Fiber
is in this state then
it is processing normally.static final int STOP_PENDING
Fiber
is terminating
processing. This state is always followed by the state
ST0PPED
.static final int STOPPED
Fiber
.
Depending on the implementation it may be possible to resurrect the
Fiber
from this state.void start()
Fiber
, which should eventually transition to a
RUNNING
status.void stop()
Fiber
.
Once invoked the Fiber
should begin it's shutdown process.
Depending on the implementation, this method may block until the
Fiber
terminates.String getName()
Fiber
. The
name of the instance is defined by the implementor, but it should be
realitively unique when possible.Fiber
.int getStatus()
Fiber
.
The status of the fiber should be one of the predefined constants of the
Fiber
interface, or from one of the derived interfaces.Fiber
.Copyright © 2021. All rights reserved.