BRE12
|
Aggregator base class. More...
#include <_aggregator_impl.h>
Public Member Functions | |
template<typename handler_type > | |
void | execute (operation_type *op, handler_type &handle_operations, bool long_life_time=true) |
Place operation in list. More... | |
Aggregator base class.
An aggregator for collecting operations coming from multiple sources and executing them serially on a single thread. operation_type must be derived from aggregated_operation. The parameter handler_type is a functor that will be passed the list of operations and is expected to handle each operation appropriately, setting the status of each operation to non-zero.
|
inline |
Place operation in list.
Place operation in list and either handle list or wait for operation to complete. long_life_time specifies life time of an operation inserting in an aggregator. "Long" (long_life_time == true) life time operation can be accessed even after executing it. "Short" (long_life_time == false) life time operations can be destroyed during executing so any access to it after executing is invalid.