summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/pulp.c7
-rw-r--r--src/pulp.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/pulp.c b/src/pulp.c
index 179451e..4166dc5 100644
--- a/src/pulp.c
+++ b/src/pulp.c
@@ -401,6 +401,13 @@ pulp_fiber_t * pulp_fiber_new(pulp_t *pulp, unsigned delay_ms, thunk_t *thunk)
}
+/* return the current fiber */
+pulp_fiber_t * pulp_self(pulp_t *pulp)
+{
+ return pulp->current;
+}
+
+
/* sleep for the supplied number of microseconds (not public) */
static void pulp_usleep(pulp_t *pulp, unsigned useconds)
{
diff --git a/src/pulp.h b/src/pulp.h
index b90b913..6111c80 100644
--- a/src/pulp.h
+++ b/src/pulp.h
@@ -32,5 +32,6 @@ pulp_fiber_t * pulp_fiber_new(pulp_t *pulp, unsigned delay_ms, thunk_t *thunk);
void pulp_msleep(pulp_t *pulp, unsigned milliseconds);
void pulp_sleep(pulp_t *pulp, unsigned seconds);
pulp_usec_t pulp_now(pulp_t *pulp);
+pulp_fiber_t * pulp_self(pulp_t *pulp);
#endif
© All Rights Reserved