diff options
author | 2016-07-08 16:57:42 -0700 | |
---|---|---|
committer | 2016-07-08 16:57:42 -0700 | |
commit | a36857da24b126300234f86450a61b7b2a7d0daa (patch) | |
tree | 2e28b10a538d08df42014f006a7864f97db1233b /src/core/lib/iomgr/combiner.h | |
parent | 919175b6194e28476626b235ae4fe02caede0bcf (diff) |
Progress on a finalization list
Diffstat (limited to 'src/core/lib/iomgr/combiner.h')
-rw-r--r-- | src/core/lib/iomgr/combiner.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/lib/iomgr/combiner.h b/src/core/lib/iomgr/combiner.h index a3f75d48cf..d6bc27111f 100644 --- a/src/core/lib/iomgr/combiner.h +++ b/src/core/lib/iomgr/combiner.h @@ -55,5 +55,13 @@ void grpc_combiner_destroy(grpc_combiner *lock); // Execute \a action within the lock. void grpc_combiner_execute(grpc_exec_ctx *exec_ctx, grpc_combiner *lock, grpc_closure *closure, grpc_error *error); +// Execute \a action within the lock just prior to unlocking. +// if \a force_async_break is additionally set, the combiner is forced to trip +// through the workqueue between finishing the primary queue of combined +// closures and executing the finally list. +// Can only be called from within a closure scheduled by grpc_combiner_execute +void grpc_combiner_execute_finally(grpc_exec_ctx *exec_ctx, grpc_combiner *lock, + grpc_closure *closure, grpc_error *error, + bool force_async_break); #endif /* GRPC_CORE_LIB_IOMGR_COMBINER_H */ |