12 releases (breaking)

0.10.0 May 25, 2024
0.9.0 Aug 29, 2023
0.8.0 Apr 21, 2022
0.7.0 Dec 12, 2021
0.1.1 Jul 26, 2017

#557 in Asynchronous

Download history 72/week @ 2024-07-24 17/week @ 2024-07-31 1/week @ 2024-09-18 3/week @ 2024-09-25 5/week @ 2024-10-02

697 downloads per month

MIT/Apache

29KB
239 lines

tokio-file

A library for integrating file I/O with tokio. File I/O can be seamlessly mixed with all other Future types within the Tokio reactor.

Build Status Crates.io

Documentation

# Cargo.toml
[depdendencies]
tokio = "1.0.0"
tokio-file = "0.10.0"

Usage

See the examples directory in the repository. In general, any program that's already using tokio can add file I/O by using tokio_file::AioFileExt and running the resulting futures in the tokio reactor.

Platforms

tokio-file version 0.10 works on FreeBSD, using the mio-aio crate. It will probably also work on DragonflyBSD and OSX. It does not work on Linux. The tokio-file API can be supported on Linux, but it will need a completely different backend. Instead of using POSIX AIO as mio-aio does, Linux will need a mio-libaio crate, that uses Linux's nonstandard libaio with an eventfd for notifications. That's the approach taken by seastar.

License

tokio-file is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE, and LICENSE-MIT for details.

Dependencies

~4–12MB
~142K SLoC