Python Glossary English

все 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Сообщить о неточности