Expand description
Asynchronous file and standard stream adaptation.
This module contains utility methods and adapter types for input/output to
files or standard streams (Stdin
, Stdout
, Stderr
), and
filesystem manipulation, for use within (and only within) a Tokio runtime.
Tasks run by worker threads should not block, as this could delay
servicing reactor events. Portable filesystem operations are blocking,
however. This module offers adapters which use a blocking
annotation
to inform the runtime that a blocking operation is required. When
necessary, this allows the runtime to convert the current thread from a
worker to a backup thread, where blocking is acceptable.
Usage
Where possible, users should prefer the provided asynchronous-specific
traits such as AsyncRead
, or methods returning a Future
or Poll
type. Adaptions also extend to traits like std::io::Read
where methods
return std::io::Result
. Be warned that these adapted methods may return
std::io::ErrorKind::WouldBlock
if a worker thread can not be converted
to a backup thread immediately. See tokio-threadpool for more details
of the threading model and blocking
.
Re-exports
pub use file::File;
Modules
Structs
create_dir_all
.create_dir
.hard_link
.metadata
.read_dir
.read_link
.remove_dir
.remove_file
.rename
.set_permissions
.symlink_metadata
.Functions
to
already exists.