1 #ifndef FWCore_Concurrency_syncWait_h
2 #define FWCore_Concurrency_syncWait_h
11 #include "oneapi/tbb/task_group.h"
12 #include "oneapi/tbb/task.h"
17 [[nodiscard]] std::exception_ptr
syncWait(
F&& iFunc) {
18 std::exception_ptr exceptPtr{};
22 oneapi::tbb::task_group
group;
24 oneapi::tbb::task::suspend([&](oneapi::tbb::task::suspend_point
tag) {
25 auto waitTask =
make_waiting_task([tag, &exceptPtr](std::exception_ptr
const* iExcept) {
29 oneapi::tbb::task::resume(tag);
std::exception_ptr syncWait(F &&iFunc)
FunctorWaitingTask< F > * make_waiting_task(F f)
static uInt32 F(BLOWFISH_CTX *ctx, uInt32 x)