Trait std::os::unix::process::ExitStatusExt

1.0.0 · source ·
pub trait ExitStatusExt: Sealed {
    // Required methods
    fn from_raw(raw: i32) -> Self;
    fn signal(&self) -> Option<i32>;
    fn core_dumped(&self) -> bool;
    fn stopped_signal(&self) -> Option<i32>;
    fn continued(&self) -> bool;
    fn into_raw(self) -> i32;
}
Available on Unix only.
Expand description

特定于 Unix 的 process::ExitStatusExitStatusError 的扩展。

在 Unix 上,ExitStatus不一定代表退出状态,因为传递给 _exit 系统调用或由 ExitStatus::code() 返回。 它表示由 wait 系列系统调用之一返回的任何等待状态

Unix 等待状态 (Rust ExitStatus) 可以代表 Unix 退出状态,但也可以代表其他类型的进程事件。

这个 trait 是封闭的:它不能在标准库之外实现。 这是为了将来的附加方法不会破坏更改。

Required Methods§

1.12.0 · source

fn from_raw(raw: i32) -> Self

wait 的原始底层整数状态值创建一个新的 ExitStatusExitStatusError

该值应该是等待状态,而不是退出状态。

Panics

尝试从 0 的等待状态生成 ExitStatusError 时出现 panic。

创建 ExitStatus 总是会成功的,并且从不 panics。

source

fn signal(&self) -> Option<i32>

如果进程被一个信号终止,则返回该信号。

换句话说,如果为 WIFSIGNALED,则返回 WTERMSIG

1.58.0 · source

fn core_dumped(&self) -> bool

如果进程被一个信号终止,说明它是否丢弃了核心。

1.58.0 · source

fn stopped_signal(&self) -> Option<i32>

如果该进程被信号停止,则返回该信号。

换句话说,如果为 WIFSTOPPED,则返回 WSTOPSIG。 这仅在状态来自 wait 系统调用时才可能,该系统调用通过 WUNTRACED,然后转换为 ExitStatus

1.58.0 · source

fn continued(&self) -> bool

进程是否从停止状态继续。

即,WIFCONTINUED。 这只有在状态来自 wait 系统调用时才有可能,该系统调用通过 WCONTINUED,然后转换为 ExitStatus

1.58.0 · source

fn into_raw(self) -> i32

返回底层的原始 wait 状态。

返回的整数是等待状态,而不是退出状态。

Implementors§