Function std::process::exit

1.0.0 · source ·
pub fn exit(code: i32) -> !
Expand description

使用指定的退出代码终止当前进程。

该函数将永远不会返回,并会立即终止当前进程。退出代码将传递到底层操作系统,并且可供其他进程使用。

请注意,由于此函数从不返回,并且终止了该进程,因此将不运行当前栈或任何其他线程的栈上的析构函数。 如果需要彻底关闭,建议仅在没有更多析构函数要运行的已知点调用此函数; 或者,最好简单地从 main 函数中返回一个实现 Termination 的类型 (例如 ExitCodeResult) 并完全避免这个函数:

fn main() -> Result<(), MyError> {
    // ...
    Ok(())
}
Run

特定于平台的行为

Unix: 在类似 Unix 的平台上,检查父级退出代码的父进程不太可能看到 exit 的所有 32 位。在大多数类 Unix 平台上,仅考虑八个最低有效位。

例如,此示例的退出代码将是 Linux 上的 0,但 Windows 上的 256:

use std::process;

process::exit(0x0100);
Run