|0.2.1||Jun 28, 2022|
|0.2.0||Apr 10, 2022|
|0.1.3||Feb 1, 2021|
|0.1.2-alpha.1||Jul 29, 2020|
|0.0.0||Jul 5, 2020|
#234 in Asynchronous
489 downloads per month
Used in 10 crates (3 directly)
Nuclei is a proactor-based IO system which is runtime agnostic and can work with any runtime. The proactor system's design principles are matching Boost Asio. Nuclei is not using a conventional reactor approach. It is completely asynchronous, and it's wrapping poll based IO in a proactive fashion.
The current io_uring implementation needs a modern Linux kernel (5.6+).
- Async TCP, UDP, Unix domain sockets and files...
- The proactor system doesn't block
- Scatter/Gather operations
- Minimal allocation
- More expressive than any other runtime
- Completely asynchronous I/O system with lock free programming
Please head to
examples directory to run the examples:
$ cd examples $ cargo run --example fread-vect
$ cargo test --no-default-features --features=iouring # For iouring $ cargo test # For others
Evented IO backend
iouring feature gate is not enabled, the platforms evented backend is used. For example, on Linux,
epoll would be used.
Executor is using
async-global-executor. Available features are:
LicenseLicensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Gif is from the documentary called "Particle Fever".