Skip to content

cyderize/mio

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MIO - Metal IO

MIO is a lightweight IO library for Rust with a focus on adding as little overhead as possible over the OS abstractions.

Build Status

Usage

To use mio, first add this to your Cargo.toml:

[dependencies.mio]
git = "https://github.com/carllerche/mio"

mio is on Crates.io, but is not often updated.

Then, add this to your crate root:

extern crate mio;

Features

  • Event loop backed by epoll, kqueue.
  • Zero allocations at runtime
  • Non-blocking TCP, UDP and Unix domain sockets
  • High performance timer system
  • Thread safe message channel for cross thread communication

Coming soon

  • Signal handling

Non goals

The following are specifically omitted from MIO and are left to the user or higher level libraries.

  • File operations
  • Thread pools / multi-threaded event loop

Platforms

Currently, MIO only supports Linux and Darwin. However, Windows support will be coming soon. The goal is to support all platforms that Rust supports.

About

Mini IO library for Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 99.8%
  • Shell 0.2%