en | zh-cn
coio provides some basic library facilities for C++20 coroutines.
what's C++20 coroutine?
implemented facilities:
- coroutine types:
- generator
- task
- shared_task
- network:
- endpoint
- tcp_acceptor
- tcp_socket
- udp_socket
- resolver
- containers:
- inplace_vector
- fixed_string
- blocking_queue
- ring_buffer
- async-io and schedulers:
- io_context
- round_robin_scheduler
- noop_scheduler
- async_write
- async_read
- async_mutex
- others:
- when_all
- sync_wait
- async_scope
- steady_timer
note that some network and async-io facilities are currently only implemented using epoll on linux.
cmake -S . -B <your build directory>
cmake --build <your build directory>
cmake -S . -B <your build directory> -DCOIO_EXAMPLES=ON
cmake --build <your build directory>
cmake --install <your build directory> --prefix <your install directory>