Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

negrel/libzev

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

82 Commits

Repository files navigation

libzev - Cross platform event loop.

libzev is a low level cross platform event loop inspired by io_uring.

It works as follow:

  • You queue I/O operations
  • You submit I/O operations in submission queue (SQ)
  • You poll for completed operations in completion queue (CQ) and callbacks are executed
 libzev 
 +-----------------------------------------+ 
 queue poll 
 I/O I/O 
 operation submit completion 
+-----+ | +----+ +----+ +----+ | +-----+
| App +---|--->| SQ +------->| Io +------->| CQ +---|--->| App |
+-----+ | +----+ +----+ +----+ | +-----+
 | | 
 +-----------------------------------------+ 

Goals

My goal for libzev is to produce a production-quality, permissively licensed, io_uring like event loop library for Zig and C. It's main purpose is to enable parallelized I/O with a focus on usability and correctness.

Contributing

If you want to contribute to libzev to add a feature or improve the code contact me at alexandre@negrel.dev, open an issue or make a pull request.

🌠 Show your support

Please give a ⭐ if this project helped you!

buy me a coffee

📜 License

MIT © Alexandre Negrel

About

➰ Low-level cross platform event loop.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /