Releases: dallison/co
Custom context switcher
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
Linux epoll improvements
Minor changes for epoll support
Epoll on Linux
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
Fixes timerfd calculations on linux
New constructor for name and stack size
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
Minor update to use std::string for the name rather than const char*.
Release 1.3.3
Fixes a bug with bit masks.
Release 1.3.2
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
Fixes uninitialized read of interrupt_fd.