|
librfn
An ad-hoc utility library
|
#include "librfn/fibre.h"#include <assert.h>#include <stdint.h>#include <stdlib.h>#include <string.h>#include "librfn/atomic.h"#include "librfn/list.h"#include "librfn/messageq.h"#include "librfn/util.h"Go to the source code of this file.
Functions | |
| fibre_t * | fibre_self () |
| Returns the currently active fibre descriptor. More... | |
| uint32_t | fibre_scheduler_next (uint32_t time) |
| Schedule the next fibre. More... | |
| void | fibre_init (fibre_t *f, fibre_entrypoint_t *fn) |
| Dynamic initializer for a fibre descriptor. More... | |
| void | fibre_run (fibre_t *f) |
| bool | fibre_run_atomic (fibre_t *f) |
| bool | fibre_kill (fibre_t *f) |
| bool | fibre_timeout (uint32_t duetime) |
| void | fibre_eventq_init (fibre_eventq_t *evtq, fibre_entrypoint_t *fn, void *basep, size_t base_len, size_t msg_len) |
| Dynamic initializer for a fibre and eventq descriptor. More... | |
| void * | fibre_eventq_claim (fibre_eventq_t *evtq) |
| Request memory resources to send an event to a fibre. More... | |
| bool | fibre_eventq_send (fibre_eventq_t *evtq, void *evtp) |
| Send an event to a fibre. More... | |
| bool | fibre_eventq_empty (fibre_eventq_t *evtq) |
| Return true if the fibre's event queue is empty. More... | |
| void * | fibre_eventq_receive (fibre_eventq_t *evtq) |
| Recevied a message previously send to the fibre. More... | |
| void | fibre_eventq_release (fibre_eventq_t *evtq, void *evtp) |
| Release a message previously received by a fibre. More... | |
| messageq_t atomic_runq |
| fibre_state_t state |
1.8.10