mirror of
https://github.com/rust-lang/rust.git
synced 2025-05-14 02:49:40 +00:00
Add std::process::abort
This calls libc abort on Unix and fastfail on Windows.
This commit is contained in:
parent
5bd1e7f59f
commit
fc0140d271
@ -825,6 +825,21 @@ pub fn exit(code: i32) -> ! {
|
||||
::sys::os::exit(code)
|
||||
}
|
||||
|
||||
/// Terminates the process in an abnormal fashion.
|
||||
///
|
||||
/// The function will never return and will immediately terminate the current
|
||||
/// process in a platform specific "abnormal" manner.
|
||||
///
|
||||
/// Note that because this function never returns, and that it terminates the
|
||||
/// process, no destructors on the current stack or any other thread's stack
|
||||
/// will be run. If a clean shutdown is needed it is recommended to only call
|
||||
/// this function at a known point where there are no more destructors left
|
||||
/// to run.
|
||||
#[unstable(feature = "process_abort", issue = "37838")]
|
||||
pub fn abort() -> ! {
|
||||
unsafe { ::sys::abort_internal() };
|
||||
}
|
||||
|
||||
#[cfg(all(test, not(target_os = "emscripten")))]
|
||||
mod tests {
|
||||
use io::prelude::*;
|
||||
|
Loading…
Reference in New Issue
Block a user