summaryrefslogtreecommitdiff
path: root/coroutine.h
diff options
context:
space:
mode:
authorLuke T. Shumaker <lukeshu@lukeshu.com>2024-09-26 19:31:05 -0600
committerLuke T. Shumaker <lukeshu@lukeshu.com>2024-09-26 19:31:05 -0600
commitf5da707e77ee954b12f3c961012e4f40fa4e1bd3 (patch)
tree6a9ddcdd487ee5c60f3c8570866b813e5fe74d9e /coroutine.h
parenta9acf65bc8e3439d7fd2c927b2a920f120cb3a47 (diff)
races
Diffstat (limited to 'coroutine.h')
-rw-r--r--coroutine.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/coroutine.h b/coroutine.h
index 4bdc4f8..4d83181 100644
--- a/coroutine.h
+++ b/coroutine.h
@@ -114,6 +114,8 @@ void cr_yield(void);
void cr_pause_and_yield(void);
/** cr_unpause() marks a coroutine as runnable that has previously marked itself as non-runnable with cr_pause_and_yield(). */
void cr_unpause(cid_t);
+/** cr_unpause_from_sighandler() is like cr_unpause(), but safe to call from a signal handler that might race with the coroutine actually pausing itself. */
+void cr_unpause_from_sighandler(cid_t);
/** cr_end() is a counterpart to cr_begin(), but is really just cr_exit(). */
#define cr_end cr_exit