Scheduling execution with thread/computing resources distributing.
More...
#include <vtkExecutionScheduler.h>
Inherits vtkObject.
Scheduling execution with thread/computing resources distributing.
This is a class for balancing the computing resources throughout the network
- See Also
- vtkComputingResources vtkThreadedStreamingPipeline
- Events:
- vtkCommand::UpdateEvent
Definition at line 60 of file vtkExecutionScheduler.h.
| vtkExecutionScheduler::vtkExecutionScheduler |
( |
| ) |
|
|
protected |
| vtkExecutionScheduler::~vtkExecutionScheduler |
( |
| ) |
|
|
protected |
| static int vtkExecutionScheduler::IsTypeOf |
( |
const char * |
type | ) |
|
|
static |
| virtual int vtkExecutionScheduler::IsA |
( |
const char * |
type | ) |
|
|
virtual |
| virtual vtkObjectBase* vtkExecutionScheduler::NewInstanceInternal |
( |
| ) |
const |
|
protectedvirtual |
| void vtkExecutionScheduler::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
| |
Return the global instance of the scheduler
| static vtkInformationIntegerKey* vtkExecutionScheduler::TASK_PRIORITY |
( |
| ) |
|
|
static |
Key to store the priority of a task
Put the current set of executives (modules) to the be scheduled given its dependency graph which will be used to compute the set topological orders
Put the current set of executives (modules) to the be scheduled given its dependency graph which will be used to compute the set topological orders. Then wait for their execution to be complete
Wait until the current set of executives (modules) have finished executing
Wait until the current set of executives (modules) have their inputs released
| void vtkExecutionScheduler::WaitUntilAllDone |
( |
| ) |
|
Wait for all tasks to be done
| void vtkExecutionScheduler::WaitForTaskDone |
( |
vtkExecutive * |
exec | ) |
|
Wait for a task that is on the scheduling queue to be done. If the task is not there, this will return immediately. If the exec is NULL, any task that is done will trigger this the return
| void vtkExecutionScheduler::WaitForInputsReleased |
( |
vtkExecutive * |
exec | ) |
|
Similar to WaitForTaskDone but return whenever input connections of a task are released instead of done computing. But exec cannot be NULL.
Return the thread messager reserved for the given exec to notify when it is done
Return the thread messager reserved for the given exec to notify when it releases its inputs
| vtkMutexLock* vtkExecutionScheduler::GetInputsReleasedLock |
( |
vtkExecutive * |
exec | ) |
|
Return the mutex lock reserved for the given exec to notify when it releases its inputs
| void vtkExecutionScheduler::ReleaseResources |
( |
vtkExecutive * |
exec | ) |
|
Release the resources that are being used by the given exec
| void vtkExecutionScheduler::ReacquireResources |
( |
vtkExecutive * |
exec | ) |
|
Re-acquire the resource released earlier by ReleaseResource
| void vtkExecutionScheduler::RescheduleNetwork |
( |
vtkExecutive * |
sink | ) |
|
Redistribute the thread resources over the network from a sink with a maximum resource
Redistribute the thread resources from a sink given a certain amount of resource
| static void vtkExecutionScheduler::ClassInitialize |
( |
| ) |
|
|
staticprotected |
| static void vtkExecutionScheduler::ClassFinalize |
( |
| ) |
|
|
staticprotected |
| friend class implementation |
|
friend |
| void* vtkExecutionScheduler_ScheduleThread |
( |
void * |
data | ) |
|
|
friend |
The scheduling thread that is responsible for queueing up module execution in the right order
| void* vtkExecutionScheduler_ExecuteThread |
( |
void * |
data | ) |
|
|
friend |
Execute thread function that is responsible for forking process for each module
| vtkMutexLock* vtkExecutionScheduler::ScheduleLock |
|
protected |
| vtkMultiThreader* vtkExecutionScheduler::ScheduleThreader |
|
protected |
| int vtkExecutionScheduler::ScheduleThreadId |
|
protected |
The documentation for this class was generated from the following file: