#include <SerialAsync.h>
Public Types | |
typedef Iterate< SerialAsync > * | IteratePtr_t |
Public Member Functions | |
void | addNCpus (int) |
void | wait () |
void | concurrency (int) |
int | concurrency () |
void | mustRunOn () |
Static Public Member Functions | |
static bool | waitForSomeRequests (bool mayBlock) |
static bool | workReady () |
This function lets you check if there are iterates that are ready to run. | |
static bool | runSomething (bool mayBlock=true) |
Run an iterate if one is ready. | |
Static Public Attributes | |
static std::list< RunnablePtr_t > | workQueueMessages_m |
static std::list< RunnablePtr_t > | workQueue_m |
typedef Iterate<SerialAsync>* Smarts::SystemContext::IteratePtr_t |
void Smarts::SystemContext::addNCpus | ( | int | ) | [inline] |
void Smarts::SystemContext::wait | ( | ) | [inline] |
void Smarts::SystemContext::concurrency | ( | int | ) | [inline] |
int Smarts::SystemContext::concurrency | ( | ) | [inline] |
void Smarts::SystemContext::mustRunOn | ( | ) | [inline] |
static bool Smarts::SystemContext::waitForSomeRequests | ( | bool | mayBlock | ) | [inline, static] |
Referenced by runSomething().
static bool Smarts::SystemContext::workReady | ( | ) | [inline, static] |
This function lets you check if there are iterates that are ready to run.
References workQueue_m, and workQueueMessages_m.
Referenced by Smarts::IterateScheduler< SerialAsync >::blockingEvaluate().
static bool Smarts::SystemContext::runSomething | ( | bool | mayBlock = true |
) | [inline, static] |
Run an iterate if one is ready.
Returns if progress was made.
References Smarts::Runnable::execute(), Smarts::Iterate< SerialAsync >::togo(), waitForSomeRequests(), workQueue_m, and workQueueMessages_m.
Referenced by Smarts::IterateScheduler< SerialAsync >::blockingEvaluate(), Smarts::IterateScheduler< SerialAsync >::endGeneration(), and Pooma::poll().
std::list<RunnablePtr_t> Smarts::SystemContext::workQueueMessages_m [static] |
Referenced by Smarts::add(), runSomething(), and workReady().
std::list<RunnablePtr_t> Smarts::SystemContext::workQueue_m [static] |
Referenced by Smarts::add(), runSomething(), and workReady().