Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
|
|
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.
|
|
Going to try use libthunk for normalizing the fiber functions
|