2个版本

0.1.1 2023年11月16日
0.1.0 2023年11月14日

#595操作系统

MIT 许可证

8KB
112

Paw

Paw是一个用于监视和控制子进程的Rust库。它提供了一个简单的API来启动进程、读取它们的输出以及获取它们的内存和CPU使用情况。

用法

要使用Paw,首先创建一个新的Paw结构体实例。您可以指定要运行的命令、传递给命令的参数以及要监视进程的持续时间。

一旦您有了Paw实例,您就可以调用watch()方法来开始监视进程。该watch()方法接受一个回调函数作为参数。回调函数将定期调用,并带有进程的当前状态。

PawResult结构体包含有关进程的以下信息

  • info:有关进程的信息,例如其内存使用情况、CPU使用情况和运行时间。
  • process:有关进程命令的信息,例如命令名称和参数。

PawDone结构体包含有关进程的以下信息

  • stdout:进程的标准输出。
  • code:进程的退出代码。

示例

以下示例演示了如何使用Paw来监视Node.js进程

use paw::{Paw, PawResult};

let paw = Paw::new("node", &["tests/test.js"], 500);
let callback = move |result: PawResult| {
  println!("{:?}", result);
};

match paw.watch(callback) {
  Ok(result) => println!("{:?}", result),
  Err(error) => println!("{error}"),
}

运行测试

要运行测试,只需运行以下命令

cargo test

依赖项

~2.6–3.5MB
~77K SLoC