Actual async splice operations via io_uring are not yet implemented.
eve.aio.splice
Async splice / zero-copy data transfer.
Provides async splice support on Linux using io_uring IORING_OP_SPLICE when available, falling back to the splice() syscall otherwise. On non-Linux platforms, operations fail with SpliceErrorReason.NOT_SUPPORTED.
At least one of the file descriptors must refer to a pipe.
Example (Linux):
import eve.aio.splice;
const available = AsyncSplice.ioUringSpliceAvailable();
// Use splice() via thread pool or io_uring depending on kernel supportstruct AsyncSplice
Types 1
structAsyncSplice
Async splice helper for zero-copy data transfer.
On Linux, queries the kernel for IORING_OP_SPLICE support at runtime. When available, splice operations can be submitted through io_uring for fully asynchronous execution. Otherwise, the splice() syscall runs in a worker thread.
On non-Linux platforms, all operations return SpliceErrorReason.NOT_SUPPORTED.
Note
The current implementation provides the runtime probe only.
Methods