#tokio #async #async-std #async-await #generic

rtx

RTx 是一个零成本的运行时抽象,旨在供 Rust 库使用,以实现异步运行时的选择自由。

1 个不稳定版本

0.1.0 2022年2月18日

#1503异步

Download history 1/week @ 2024-03-14 8/week @ 2024-03-28 8/week @ 2024-04-04 1/week @ 2024-05-16

80 每月下载量

MIT/Apache

52KB
1K SLoC

RTx

LaunchBadge 团队 用 ❤️ 构建

RTx 是一个 零成本 的运行时抽象,旨在供 Rust 库使用,以实现 选择自由

利用 RTx 的库将实现一个零成本和易于使用的 API 的异步操作。

使用一个或多个运行时抽象库的应用程序将根据其 选择自由 选择运行时,这将反映在整个依赖关系树中。

  • 异步同步。使用抽象的异步运行时从 RTx 构造并使用类型,或者使用 std 的同步 IO。

  • 选择自由。允许您的下游使用自由选择与您的库一起使用的异步运行时。

  • 零成本。只要启用一个运行时,RTx 就保持零成本。换句话说,在只启用 tokio 的情况下使用 tokio 或使用 rtxtokio 之间没有操作差异。

安装

对于库作者

rtx = { version = "0.1.0", features = [ "async" ] }
  • async - 启用抽象异步接口。

  • blocking - 启用同步接口(使用 std)。

对于应用程序开发者

# use * to let the version be constrained elsewhere in your tree
rtx = { version = "*", features = [ "tokio" ] }
  • tokio - 当可用时使用 tokio 运行时。

  • async-std - 使用 async-std 运行时。

许可证

许可协议为以下之一

贡献

除非您明确声明,否则您提交给包括在作品中并由您定义的 Apache-2.0 许可协议的任何有意贡献,都应按上述方式双重许可,不附加任何其他条款或条件。

依赖关系

~0–11MB
~117K SLoC