Condy
C++ Asynchronous System Call Layer, Powered by io_uring and C++20 Coroutines
Install / Use
/learn @wokron/CondyREADME
Condy🍬
C++ Asynchronous System Call Layer for Linux, Powered by io_uring and C++20 Coroutines
Condy is designed to provide an intuitive, high-performance coroutine runtime on top of io_uring:
-
🛠️ Comprehensive io_uring Integration Designed to integrate and maintain support for most io_uring features, with ongoing updates to track kernel and liburing advancements.
-
🏃 Low Overhead Efficient template-based abstractions and precise lifetime management eliminate nearly all heap allocations outside coroutine frames, resulting in extremely low runtime overhead.
-
💡 Intuitive Programming Model Write asynchronous code in a direct, readable style using C++20 coroutines—no callbacks. Friendly APIs, high-level combinators, and channels make complex async flows easy to express.
Quick Start
// hello.cpp
#include <condy.hpp>
condy::Coro<> co_main() {
std::string msg = "Hello, Condy!\n";
co_await condy::async_write(STDOUT_FILENO, condy::buffer(msg), 0);
}
int main() { condy::sync_wait(co_main()); }
# Make sure liburing (>=2.3) is installed on your system
# On Ubuntu: sudo apt install liburing-dev
c++ hello.cpp -o hello -std=c++20 -luring -I./include
./hello
# Hello, Condy!
See Documentation for more details.
Documentation
- Online Docs (GitHub Pages)
- Building and Usage: How to build and integrate Condy in your project.
- User Guide: Step-by-step introduction to Condy’s concepts and usage.
- Benchmarks: Performance comparison between Condy and other frameworks.
- Examples: Practical Condy code samples.
- Async Operation Types: Overview and classification of supported io_uring async operation variants.
Support
- For questions, bug reports, or feature requests, please open an issue.
- Pull requests are welcome!
Related Skills
node-connect
339.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
339.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.9kCommit, push, and open a PR
