alibaba / PhotonLibOS

Probably the fastest coroutine lib in the world!
https://PhotonLibOS.github.io
Apache License 2.0
857 stars 115 forks source link
async-io coroutine cpp fs-library iouring libos net-library

PhotonLibOS

Linux x86_64 Linux ARM macOS x86_64 macOS ARM

PhotonlibOS.github.io

What's New

Click to show more history...

* Version 0.5 is released. Except for various performance improvements, including spinlock, context switch, and new run queue for coroutine scheduling, we have re-implemented the HTTP module so that there is no `boost` dependency anymore. * Version 0.4 has come, bringing us these three major features: 1. Support coroutine local variables. Similar to the C++11 `thread_local` keyword. See [doc](doc/thread-local.md). 2. Support running on macOS platform, both Intel x86_64 and Apple M1 included. 3. Support LLVM Clang/Apple Clang/GCC compilers. * Photon 0.3 was released on 2 Sep 2022. Except for bug fixes and improvements, a new `photon_std` namespace is added. Developers can search for `std::thread`, `std::mutex` in their own projects, and replace them all into the equivalents of `photon_std::`. It's a quick way to transform thread-based programs to coroutine-based ones. * Photon 0.2 was released on 28 Jul 2022. This release was mainly focused on network socket, security context and multi-vcpu support. We re-worked the `WorkPool` so it's more friendly now to write multi-vcpu programs. * Made the first tag on 27 Jul 2022. Fix the compatibility for ARM CPU. Throughly compared the TCP echo server performance with other libs.

Community

Join Slack: link

Join DingTalk group: 55690000272