小编j16*_*16r的帖子

如果我的应用程序出现恐慌,我如何确保生成的子进程被终止?

我正在编写一个启动守护进程并对其进行测试的小测试,例如:

let server = Command::new("target/debug/server").spawn();

// do some tests

server.kill();
Run Code Online (Sandbox Code Playgroud)

测试失败的典型方式是恐慌。不幸的是,这意味着 kill() 永远不会被调用并且测试套件的重复运行失败,因为端口被仍在运行的旧进程占用。

是否有类似 TRAP 功能的东西可以用来确保孩子被杀死?

zombie-process child-process rust

8
推荐指数
2
解决办法
1328
查看次数

标签 统计

child-process ×1

rust ×1

zombie-process ×1