From 4b0e832e27f741e98ada8408b617a674cf3ce3f3 Mon Sep 17 00:00:00 2001 From: Hayodea Hakol Date: Fri, 19 Sep 2025 01:32:52 -0400 Subject: [PATCH] Asnc: LockSet is now a member of serializedAsyncCont; not base class We needed to pass in a ref to the parent SerializedAsyncContin, so we had to make it a member var instead of a base class. --- include/asynchronousContinuation.h | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/include/asynchronousContinuation.h b/include/asynchronousContinuation.h index d553199..b861f57 100644 --- a/include/asynchronousContinuation.h +++ b/include/asynchronousContinuation.h @@ -106,7 +106,7 @@ public: template class SerializedAsynchronousContinuation -: public PostedAsynchronousContinuation, public LockSet +: public PostedAsynchronousContinuation { public: SerializedAsynchronousContinuation( @@ -114,16 +114,19 @@ public: OriginalCbFnT originalCbFn, std::vector> requiredLocks = {}) : PostedAsynchronousContinuation(caller, originalCbFn), - LockSet(std::move(requiredLocks)) + requiredLocks(*this, std::move(requiredLocks)) {} template void callOriginalCb(Args&&... args) { - LockSet::release(); + requiredLocks.release(); PostedAsynchronousContinuation::callOriginalCb( std::forward(args)...); } + +public: + LockSet requiredLocks; }; } // namespace smo