92 : f_dependencies({ dependency })
117 : f_dependencies(dependencies)
163 throw in_use_error(
"workload already being processed, you can't add more dependencies to it.");
189 throw in_use_error(
"workload already being processed, you can't add more dependencies to it.");
Lock a mutex in an RAII manner.
virtual ~item_with_predicate()
The destructor of the item with predicate.
bool f_processing
Whether this workload is being processed.
virtual bool valid_workload() const
The valid_workload() to test whether we can process this item.
void add_dependencies(dependencies_t const &dependencies)
Add a set of dependencies at once.
item_with_predicate(pointer_t dependency=pointer_t())
Initialize the item with one dependency.
std::shared_ptr< item_with_predicate > pointer_t
The item_with_predicate shared pointer type.
mutex f_mutex
The mutex used to protect the predicate variables.
std::deque< weak_pointer_t > dependencies_t
The type representing the list of dependencies.
dependencies_t f_dependencies
Set of dependencies.
void add_dependency(pointer_t dependency)
Add an item as a predicate of this item.
Exceptions for the thread environment.
Thread Runner and Managers.
Item with Predicate for Worker FIFO Pool.