| Commit message (Expand) | Author | Age | Files | Lines |
| * | Factor interrupt generation to separate facility•••* fibers/interrupts.scm: New file.
* fibers/internal.scm (<scheduler>): Remove Hz field and adapt users.
(run-scheduler): Remove preemption; (fibers) handles this now.
(yield-current-fiber): New primitive.
* fibers.scm (run-fibers): Use interrupts module and wrap run-scheduler
in `with-interrupts'.
* Makefile.am: Add new file.
| Andy Wingo | 2016-12-16 | 1 | -11/+15 |
| * | Add support for preemption•••* Makefile.am: Add new test.
* TODO.md: Remove stale TODO entries.
* fibers.scm (run-fibers): Add #:hz parameter.
* fibers.texi (Design): Mention that we support preemption.
(Using Fibers): Update for preemption.
* fibers/internal.scm (<scheduler>): Add hz field.
(make-scheduler): Add #:hz initarg.
(maybe-preemptive): New helper.
(run-scheduler): Use maybe-preemptive.
* tests/preemption.scm: New test.
| Andy Wingo | 2016-12-12 | 1 | -1/+1 |
| * | Fibers inherit dynamic state of parent.•••* fibers.scm (spawn-fiber): Fibers inherit dynamic state of parent.
* tests/parameters.scm: New test.
* Makefile.am: Add new file.
| Andy Wingo | 2016-12-12 | 1 | -2/+7 |
| * | Internals twiddles•••* fibers/internal.scm (current-scheduler/public): Document.
(current-fiber/public): New accessor.
(resume-on-timer): Document.
* fibers.scm: Adapt to use current-fiber directly from the internals.
Remove kill-fiber.
| Andy Wingo | 2016-10-12 | 1 | -14/+4 |
| * | Rework internals resume interface•••* fibers/internal.scm (resume-on-fd-events, resume-on-readable-fd)
(resume-on-writable-fd, resume-on-timer): Rework primitive resume
interface.
* fibers.scm:
* fibers/timers.scm: Adapt users.
| Andy Wingo | 2016-10-12 | 1 | -10/+6 |
| * | Lighter fibers•••* fibers/internal.scm: Remove fiber-state; this is managed implicitly
now by ensuring that a fiber is only resumed at most once per suspend.
We no longer record fiber return values; that should be up to the
fiber's init continuation. Replace scheduler inbox with making the
runqueue atomic.
* fibers.scm (run-fibers): Adapt to run-scheduler change.
* fibers/repl.scm (fibers): Adapt to fiber-data change.
| Andy Wingo | 2016-10-11 | 1 | -7/+10 |
| * | Timeout CML operations•••* fibers/timers.scm: New file.
* fibers/internal.scm (add-timer!): Take expiry as absolute time.
* fibers.scm (fibers): Re-export sleep from (fibers timers).
* Makefile.am: Adapt.
| Andy Wingo | 2016-10-03 | 1 | -9/+2 |
| * | Sleep refactor•••* fibers/internal.scm: Rename sleepers to timers, and be callbacks
instead of waking fibers directly.
* fibers.scm (sleep): Adapt.
| Andy Wingo | 2016-10-03 | 1 | -1/+4 |
| * | Add support for ,spawn-fiber | Andy Wingo | 2016-09-20 | 1 | -10/+11 |
| * | Add ,fibers command. | Andy Wingo | 2016-09-20 | 1 | -0/+1 |
| * | run-fibers returns values from initial thread•••* fibers.scm (run-fibers):
* fibers/internal.scm (run-scheduler): If there is an init thunk, keep
the scheduler running until the corresponding fiber is finished.
Return the values returned from the fiber.
* tests/basic.scm (assert-run-fibers-terminates): Return values.
(assert-run-fibers-returns): New helper. Use it.
| Andy Wingo | 2016-09-10 | 1 | -3/+7 |
| * | Tidy up fibers imports•••* fibers.scm (fibers): Trim imports.
| Andy Wingo | 2016-09-07 | 1 | -5/+2 |
| * | Separate public and private fibers interfaces•••* fibers/internal.scm: New file, factored out of (fibers).
* fibers.scm: Refactor to be just the public interface.
* fibers/channels.scm:
* web/server/fibers.scm:
* examples/memcached-client.scm:
* examples/memcached-server.scm:
* examples/ping-client.scm:
* examples/ping-server.scm: Adapt to interface changes.
* Makefile.am (SOURCES): Add (fibers internal).
| Andy Wingo | 2016-09-07 | 1 | -250/+38 |
| * | Add channels implementation•••* fibers/channels.scm: New file.
* fibers.scm: Add comment.
* Makefile.am: Add new file.
| Andy Wingo | 2016-09-06 | 1 | -0/+5 |
| * | Add support for FD finalization•••* fibers.scm (finalize-fd, wait-for-events): Arrange for close-port to
call into the scheduler.
| Andy Wingo | 2016-09-02 | 1 | -0/+16 |
| * | Slight internal refactor•••* fibers.scm (run): Inline `next-fiber' into its only use.
| Andy Wingo | 2016-09-02 | 1 | -14/+12 |
| * | Readability refactors to fibers.scm•••* fibers.scm (schedule-fibers-for-fd): New function, factored out of
poll-for-events.
(poll-for-events): Comments and style refactorings.
| Andy Wingo | 2016-07-06 | 1 | -38/+44 |
| * | Add (fibers) module•••* fibers.scm: New file.
* Makefile.am: Add new file.
| Andy Wingo | 2016-07-03 | 1 | -0/+265 |