summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2018-05-03libpulp: move expire_alarms() to pulp_tick() beginVito Caputo
Expiring alarms of sleeping fibers in pulp_schedule() has the potential to prevent pulp_tick() from ever returning if there's always another fiber expiring @ schedule. In order to allow simple integration with external event loops, pulp_tick() is supposed to operate on what is essentially a slice of runnable fibers then immediately return control to the caller.
2018-05-03libpulp: forward declare thunk_t, omit thunk.hVito Caputo
Let the user of pulp.h control how they get at this struct, our libthunk submodule fulfills our implementation needs but the caller's build architecture should be free to fulfill this type however it wants - there may be no thunk.h at all but they still would include pulp.h.
2018-05-02build: add rudimentary automake build systemVito Caputo
2018-05-02*: initial commit of libpulpVito Caputo
libpulp is a very basic cooperatively-scheduled userspace threading library. It refers to the userspace threads as fibers, and uses my other little library libthunk to bind the functions and their calling environment into tidy little structures having a uniform calling convention. At this time there's no build system or anything of the sort, it's early days and I'll probably be submoduling this into another project for direct inclusion and compilation.
© All Rights Reserved