Skip to content

Releases: dallison/co

Custom context switcher

27 Dec 19:22
Compare
Choose a tag to compare
Pre-release

This is a tag from a feature branch that provides custom contexts functions that are higher performance than the setjmp/longjmp or the Linux user-context based versions.

Both x86_64 and Aarch64 version of the context switching code are available.

Fix mac build

17 Nov 00:27
Compare
Choose a tag to compare

Fixed epoll support and, of course, broke poll support

Linux epoll improvements

17 Nov 00:18
Compare
Choose a tag to compare

Minor changes for epoll support

Epoll on Linux

08 Mar 01:23
61ddf05
Compare
Choose a tag to compare

This enables the use of the linux-specific epoll function on Linux by default.

If this doesn't work for you, you can switch it off by changing the POLL_MODE macro in coroutine.h

Fix timerfd calculations

30 Jan 02:12
Compare
Choose a tag to compare

Fixes timerfd calculations on linux

New constructor for name and stack size

09 Jan 17:58
Compare
Choose a tag to compare

Very minor update to provide a convenience constructor for a coroutine that allows the name and stack size to be specified easier.

Release 1.3.4

26 Oct 20:51
Compare
Choose a tag to compare

Minor update to use std::string for the name rather than const char*.

Release 1.3.3

08 Sep 19:25
Compare
Choose a tag to compare

Fixes a bug with bit masks.

Release 1.3.2

03 Aug 22:34
Compare
Choose a tag to compare

This uses user contexts for Linux and setjmp/longjmp for other platforms. While benefiting from being more portable, setjmp/longjmp causes LLVM TSAN to get its knickers in a twist. Also, Apple have decided that user contexts (ucontext_t) is dangerous and have deprecated it.

Release 1.3.1

06 Jul 23:15
Compare
Choose a tag to compare

Fixes uninitialized read of interrupt_fd.