1 use crate::backend;
2 
3 /// `pause()`
4 ///
5 /// The POSIX `pause` interface returns an error code, but the only thing
6 /// `pause` does is sleep until interrupted by a signal, so it always
7 /// returns the same thing with the same error code, so in rustix, the
8 /// return value is omitted.
9 ///
10 /// # References
11 ///  - [POSIX]
12 ///  - [Linux]
13 ///  - [Apple]
14 ///  - [FreeBSD]
15 ///  - [NetBSD]
16 ///  - [OpenBSD]
17 ///  - [DragonFly BSD]
18 ///  - [illumos]
19 ///
20 /// [POSIX]: https://pubs.opengroup.org/onlinepubs/9699919799/functions/pause.html
21 /// [Linux]: https://man7.org/linux/man-pages/man2/pause.2.html
22 /// [Apple]: https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man3/pause.3.html
23 /// [FreeBSD]: https://man.freebsd.org/cgi/man.cgi?query=pause&sektion=3
24 /// [NetBSD]: https://man.netbsd.org/pause.3
25 /// [OpenBSD]: https://man.openbsd.org/pause.3
26 /// [DragonFly BSD]: https://man.dragonflybsd.org/?command=pause&section=3
27 /// [illumos]: https://illumos.org/man/2/pause
28 #[inline]
pause()29 pub fn pause() {
30     backend::event::syscalls::pause()
31 }
32