Method | Description | |
---|---|---|
AddThread ( ) : void |
Adds a new worker thread to the engine.
|
|
AddThread ( Action |
Adds a new worker thread to the engine.
|
|
Dispose ( ) : void |
Releases resources used by the object.
|
|
EnqueueTask ( Action |
Enqueues a task to the thread manager. This should be safe to call from multiple threads and from other tasks.
|
|
ForLoop ( int startIndex, int endIndex, Action |
Loops from the starting index (inclusive) to the ending index (exclusive), calling the loopBody at each iteration. The forLoop function will not return until all iterations are complete. This is meant to be used in a 'fork-join' model; only a single thread should be running a forLoop at any time.
|
|
RemoveThread ( ) : void |
Removes a worker thread from the engine.
|
|
SpecializedThreadManager ( ) : System |
Constructs a new specialized thread manager that manages loops and tasks separately.
|
|
WaitForTaskCompletion ( ) : void |
Waits until all tasks enqueued using enqueueTask are complete.
|
public AddThread ( Action | ||
initialization | Action | Function that each of the new threads will call before entering its work loop. Note that this type of thread manager spawns two worker threads for each given thread; /// the initializer will run twice. |
initializationInformation | object | Data to give the initializer. |
return | void |
public EnqueueTask ( Action | ||
taskBody | Action | Method to run. |
taskInformation | object | Data to give to the task. |
return | void |
public ForLoop ( int startIndex, int endIndex, Action |
||
startIndex | int | Inclusive starting index. |
endIndex | int | Exclusive ending index. |
loopBody | Action |
Function that handles an individual iteration of the loop. |
return | void |