#运行时 #应用 #平台

nightly photonio

异步应用的运行时

2个版本

0.0.5 2022年11月8日
0.0.4 2022年10月5日
0.0.3 2022年10月5日
0.0.1 2022年6月10日

#1887 in 异步


2 crate中使用

MIT许可证

21KB
487

异步应用的效率运行时。

此运行时有两种实现

默认情况下,此crate在Linux上使用photonio-uring实现,在其他平台上使用photonio-tokio实现。要使用所有平台上的photonio-tokio实现,启用tokio功能。

示例

use photonio::{
    fs::File,
    io::{Write, WriteAt},
};

#[photonio::main]
async fn main() -> std::io::Result<()> {
    let mut file = File::create("hello.txt").await?;
    file.write(b"hello").await?;
    file.write_at(b"world", 5).await?;
    Ok(())
}

限制

  • 丢弃异步文件系统或网络操作未完成的future会导致panic。但是,这种行为可能会在未来改变。
  • 当前的多线程运行时使用简单的循环调度任务。将来将添加工作窃取调度器。

依赖关系

~1.2–8MB
~59K SLoC