все Python 3Linux · macOSosфункция
os.WIFSTOPPED
os — разбор статуса (W*)
Проверяет, был ли процесс остановлен (не завершён). Доступно на Unix.
Синтаксис
os.WIFSTOPPED(...)
Остановленный процесс жив и может продолжиться — это не завершение. Такой статус приходит, только если ожидание шло с флагом WUNTRACED или процесс трассируется. Не путайте с завершением: у остановленного процесса нет кода возврата, и waitstatus_to_exitcode для него поднимет ValueError.
Примеры
import os
print(os.WIFSTOPPED(0x137f)) # → True — младший байт статуса равен 0x7f, это признак остановки
print(os.WIFSTOPPED(9)) # → False — такой статус означает завершение сигналом, а не остановку
pid, status = os.waitpid(-1, os.WUNTRACED) # → ? только Unix: без флага WUNTRACED об остановке ребёнка узнать нельзя
print(os.WIFSTOPPED(status)) # → True, если ребёнок остановлен (например по SIGSTOP), а не завершён
print(os.WSTOPSIG(status) if os.WIFSTOPPED(status) else None) # → ? только Unix: номер остановившего сигнала имеет смысл только при истинном WIFSTOPPED
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности