Fiber that uses a thread pool for execution. More...
Public Member Functions | |
PoolFiber (IThreadPool pool, IExecutor executor) | |
Construct new instance. More... | |
PoolFiber (IExecutor executor) | |
Create a pool fiber with the default thread pool. More... | |
PoolFiber () | |
Create a pool fiber with the default thread pool and default executor. More... | |
void | Enqueue (Action action) |
Enqueue a single action. More... | |
void | Enqueue (IFiberAction action) |
Enqueue a single action. More... | |
void | RegisterSubscription (IDisposable toAdd) |
Register subscription to be unsubscribed from when the fiber is disposed. More... | |
bool | DeregisterSubscription (IDisposable toRemove) |
Deregister a subscription. More... | |
IDisposable | Schedule (IFiberAction action, int firstInMs) |
IScheduler.Schedule(IFiberAction,long) More... | |
IDisposable | ScheduleOnInterval (IFiberAction action, int firstInMs, int regularInMs) |
IScheduler.ScheduleOnInterval(Action,long,long) More... | |
IDisposable | Schedule (Action action, int firstInMs) |
Schedules an action to be executed once. More... | |
IDisposable | ScheduleOnInterval (Action action, int firstInMs, int regularInMs) |
Schedule an action to be executed on a recurring interval. More... | |
void | Start () |
Start consuming actions. More... | |
void | Stop () |
Stop consuming actions. More... | |
void | Dispose () |
Stops the fiber. More... | |
Protected Attributes | |
readonly object | lock = new object() |
int | started = (int)ExecutionState.Created |
Properties | |
ICounter | CounterItemsInQueue [get, set] |
ICounter | CounterItemsInExecution [get, set] |
ICounter | CounterEnqueue [get, set] |
ICounter | CounterDequeue [get, set] |
int | NumSubscriptions [get] |
Number of subscriptions. More... | |
Fiber that uses a thread pool for execution.
|
inline |
Construct new instance.
pool | |
executor |
|
inline |
Create a pool fiber with the default thread pool.
|
inline |
Create a pool fiber with the default thread pool and default executor.
|
inline |
Deregister a subscription.
toRemove |
Implements ExitGames.Concurrency.Core.ISubscriptionRegistry.
|
inline |
Stops the fiber.
|
inline |
|
inline |
|
inline |
Register subscription to be unsubscribed from when the fiber is disposed.
toAdd |
Implements ExitGames.Concurrency.Core.ISubscriptionRegistry.
|
inline |
Schedules an action to be executed once.
action | |
firstInMs |
Implements ExitGames.Concurrency.Core.IScheduler.
|
inline |
IScheduler.Schedule(IFiberAction,long)
action | |
firstInMs |
Implements ExitGames.Concurrency.Core.IScheduler.
|
inline |
Schedule an action to be executed on a recurring interval.
action | |
firstInMs | |
regularInMs |
Implements ExitGames.Concurrency.Core.IScheduler.
|
inline |
IScheduler.ScheduleOnInterval(Action,long,long)
action | |
firstInMs | |
regularInMs |
Implements ExitGames.Concurrency.Core.IScheduler.
|
inline |
Start consuming actions.
Implements ExitGames.Concurrency.Fibers.IFiber.
|
inline |
Stop consuming actions.
|
protected |
|
protected |
|
getset |
|
getset |
|
getset |
|
getset |
|
get |
Number of subscriptions.