List of all members.
Public Member Functions
||shared_termination (size_t ncpus)|
void ||begin_critical_section (size_t cpuid)|
void ||cancel_critical_section (size_t cpuid)|
bool ||end_critical_section (size_t cpuid)|
void ||new_job ()|
void ||new_job (size_t cpuhint)|
void ||completed_job ()|
size_t ||num_active ()|
simple condition variable based shared termination checker. When a processor finds that it is out of work, it should call
- check the state of the queue.
- If the queue has jobs, call cancel_critical_section().
- If the queue has no jobs, then call end_critical_section(cpuid)
- If (end_critical_section() returns true, the scheduler can terminate. Otherwise it must loop again.
Definition at line 36 of file shared_termination.hpp.
The documentation for this class was generated from the following file: