Crate compio_driver

Source
Expand description

The platform-specified driver. Some types differ by compilation target.

Modules§

op
The async operations.

Structs§

AsyncifyPool
A thread pool to perform blocking operations in other threads.
DispatchError
An error that may be emitted when all worker threads are busy. It simply returns the dispatchable value with a convenient fmt::Debug and fmt::Display implementation.
Key
A typed wrapper for key of Ops submitted into driver. It doesn’t free the inner on dropping. Instead, the memory is managed by the proactor. The inner is only freed when:
NotifyHandle
A notify handle to the inner driver.
Overlapped
The overlapped struct we actually used for IOCP.
Proactor
Low-level actions of completion-based IO. It owns the operations to keep the driver safe.
ProactorBuilder
Builder for Proactor.
SharedFd
A shared fd. It is passed to the operations to make sure the fd won’t be closed before the operations complete.

Enums§

DriverType
Representing underlying driver type the fusion driver is using
OpType
Operation type.
OwnedFd
Owned handle or socket on Windows.
PushEntry
The return type of Proactor::push.

Traits§

AsRawFd
Extracts raw fds.
Dispatchable
A trait for dispatching a closure. It’s implemented for all `FnOnce() + Send
OpCode
Abstraction of IOCP operations.
ToSharedFd
Get a clone of SharedFd.

Type Aliases§

RawFd
On windows, handle and socket are in the same size. Both of them could be attached to an IOCP. Therefore, both could be seen as fd.