-
Notifications
You must be signed in to change notification settings - Fork 95
Open
Labels
enhancementNew feature or requestNew feature or request
Description
- Expanding
FileSysteminterface to provide async tasking capability:
trait AsyncContext {
fn wait() -> Result<()>;
}
trait FileSystem {
pub type AsyncIoContext: AsyncContext;
fn new_async_context() -> AsyncContext;
fn read(ctx: &mut AsyncIoContext, offset: u64, size: usize) -> IoResult<usize>;
}
- Modify
read_entryimplementation to generate read requests of all file blocks, then wait for completion.
For best kernel compatibility, use AIO to implement the first version. Reference: https://docs.rs/nix/latest/nix/sys/aio/fn.aio_suspend.html
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request