8#ifndef SEN_CORE_OBJ_DETAIL_WORK_QUEUE_H
9#define SEN_CORE_OBJ_DETAIL_WORK_QUEUE_H
32 SEN_NOCOPY_NOMOVE(WorkQueue)
35 WorkQueue(std::size_t maxSize,
bool dropOldest);
49 void push(Call&& call,
bool force);
52 [[nodiscard]]
bool executeAll();
55 void waitExecuteOne();
58 void waitExecuteAll(
const Duration& timeout);
64 [[nodiscard]] std::size_t getCurrentSize() const noexcept;
67 std::unique_ptr<WorkQueueImpl> pimpl_;
Here we define a set of template meta-programming helpers to let the compiler take some decisions bas...
@ force
Definition unit.h:40
detail::MoveOnlyFunctionImpl< FwdArgs... > move_only_function
Definition move_only_function.h:256