<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guile/guile-fibers/fibers, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>http://cgit.wugi.info/guile/guile-fibers/atom?h=master</id>
<link rel='self' href='http://cgit.wugi.info/guile/guile-fibers/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/'/>
<updated>2017-08-10T19:13:12Z</updated>
<entry>
<title>Garbage collect synchronized items from channels put/get queues.</title>
<updated>2017-08-10T19:13:12Z</updated>
<author>
<name>Christopher Allan Webber</name>
<email>cwebber@dustycloud.org</email>
</author>
<published>2017-08-10T19:06:51Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=0fa1fd6adf9980229a46956503a6bf36e8154a78'/>
<id>urn:sha1:0fa1fd6adf9980229a46956503a6bf36e8154a78</id>
<content type='text'>
* fibers/conditions.scm (make-counter, %steps-till-gc, counter-decrement!)
(counter-reset!): Moved to new module, counter.scm.
* fibers/counter.scm: New file.  Rename `%steps-till-gc' to
`%countdown-steps'.
* Makefile.am: Add counter.scm.
* fibers/channels.scm (&lt;channel&gt;, make-channel): Add new slots
`getq-gc-counter' and `putq-gc-counter'.
(put-operation, get-operation): Garbage collect synchronized items
from queues.
* fibers/deque.scm (dequeue-filter, dequeue-filter!): New procedures.
</content>
</entry>
<entry>
<title>Update copyright headers, adding Chris Webber where appropriate.</title>
<updated>2017-08-10T16:48:08Z</updated>
<author>
<name>Christopher Allan Webber</name>
<email>cwebber@dustycloud.org</email>
</author>
<published>2017-08-10T16:48:08Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=932f92cefbdad09bcaeb2e1e7bb4b95bc80c8d72'/>
<id>urn:sha1:932f92cefbdad09bcaeb2e1e7bb4b95bc80c8d72</id>
<content type='text'>
* fibers/conditions.scm:
* fibers/stack.scm: Update copyright headers.
</content>
</entry>
<entry>
<title>Lighten up fibers by installing "catch" in scheduler</title>
<updated>2017-08-06T13:30:49Z</updated>
<author>
<name>Andy Wingo</name>
<email>wingo@pobox.com</email>
</author>
<published>2017-08-06T13:30:49Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=84addfbfc69e7dea63c4b9b08656d052043bcecf'/>
<id>urn:sha1:84addfbfc69e7dea63c4b9b08656d052043bcecf</id>
<content type='text'>
This takes the load off of each fiber and speeds things up.
</content>
</entry>
<entry>
<title>Fix typo in schedule-task-when-fd-writable</title>
<updated>2017-08-06T13:27:43Z</updated>
<author>
<name>Andy Wingo</name>
<email>wingo@pobox.com</email>
</author>
<published>2017-08-06T13:27:43Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=539ef80203293436fef3db9dfd7af92ab5e37158'/>
<id>urn:sha1:539ef80203293436fef3db9dfd7af92ab5e37158</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rebase fibers on top of schedulers and tasks</title>
<updated>2017-08-06T10:59:50Z</updated>
<author>
<name>Andy Wingo</name>
<email>wingo@pobox.com</email>
</author>
<published>2017-08-06T10:59:50Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=2a4f707827105d041668f34b62daaff871c22c07'/>
<id>urn:sha1:2a4f707827105d041668f34b62daaff871c22c07</id>
<content type='text'>
This commit refactors fibers to be based on lighter-weight "tasks",
and makes the scheduler API more orthogonal.  Now there are no more
fiber objects (although the fibers layer could re-add them if they are
useful), and fibers no longer have names (although again this could be
re-added at an upper layer).  Also it's the current scheduler that's
bound by a parameter, not the current fiber, and as it's a thread-safe
parameter it doesn't need to be bound in each fiber.
</content>
</entry>
<entry>
<title>Garbage collect old condition waiters.</title>
<updated>2017-07-31T16:26:54Z</updated>
<author>
<name>Christopher Allan Webber</name>
<email>cwebber@dustycloud.org</email>
</author>
<published>2017-07-29T03:44:15Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=963e0d12138b70c6253088b9650af970dd515c23'/>
<id>urn:sha1:963e0d12138b70c6253088b9650af970dd515c23</id>
<content type='text'>
* fibers/stack.scm (stack-filter!): New variable.
* fibers/conditions.scm (make-counter, counter-increment!)
(counter-reset!, %steps-till-gc): New variables.
(&lt;condition&gt;, make-condition): Update to take gc-step argument.
(wait-operation): Occasionally garbage collect old condition waiters.
</content>
</entry>
<entry>
<title>Add block-asyncs in fiber-&gt;thread resume path</title>
<updated>2017-02-20T19:25:12Z</updated>
<author>
<name>Andy Wingo</name>
<email>wingo@pobox.com</email>
</author>
<published>2017-02-20T19:25:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=a1ac11aaf3484796ec223afeb8d6c273c6045f17'/>
<id>urn:sha1:a1ac11aaf3484796ec223afeb8d6c273c6045f17</id>
<content type='text'>
* fibers/operations.scm (perform-operation): Block asyncs in resume
  callback; otherwise the fiber doing the resuming could be scheduled
  away.
</content>
</entry>
<entry>
<title>Fix deprecation warning in (fibers operations)</title>
<updated>2017-02-20T19:20:13Z</updated>
<author>
<name>Andy Wingo</name>
<email>wingo@pobox.com</email>
</author>
<published>2017-02-20T19:20:13Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=df60168544ecb5995f4d676b54cbcf130153e970'/>
<id>urn:sha1:df60168544ecb5995f4d676b54cbcf130153e970</id>
<content type='text'>
* fibers/operations.scm: Use (ice-9 threads).
</content>
</entry>
<entry>
<title>Fix epoll wakeup</title>
<updated>2017-02-20T19:09:55Z</updated>
<author>
<name>Andy Wingo</name>
<email>wingo@pobox.com</email>
</author>
<published>2017-02-20T19:08:52Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=7a4dd4cdf26192659e5312348c18fd5858e7766d'/>
<id>urn:sha1:7a4dd4cdf26192659e5312348c18fd5858e7766d</id>
<content type='text'>
* fibers/epoll.scm (epoll): Like a complete idiot, I broke epoll
  wakeup.  Fixed by calling expiry-&gt;timeout while epoll-state is
  waiting.
</content>
</entry>
<entry>
<title>Update REPL support for run-fibers changes.</title>
<updated>2017-02-20T12:24:41Z</updated>
<author>
<name>Andy Wingo</name>
<email>wingo@pobox.com</email>
</author>
<published>2017-02-20T12:24:41Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wugi.info/guile/guile-fibers/commit/?id=1447b44f3827b8d65e8f5389748a827d8e6e6996'/>
<id>urn:sha1:1447b44f3827b8d65e8f5389748a827d8e6e6996</id>
<content type='text'>
* fibers/repl.scm (fibers): Update for new run-fibers changes.
</content>
</entry>
</feed>
