Python Glossary English

все Python 3Linux · macOSosфункция

os.WIFEXITED

os — разбор статуса (W*)

Проверяет по статусу waitpid, завершился ли дочерний процесс нормально (через exit). Доступно на Unix.

Синтаксис

os.WIFEXITED(...)

Первая проверка при разборе статуса: только если она истинна, WEXITSTATUS даёт осмысленный код. Процесс, убитый сигналом, завершился ненормально, и WIFEXITED для него ложна. С Python 3.9 весь разбор заменяет одна функция os.waitstatus_to_exitcode.

Примеры

import os
pid = os.fork()  # → ? только Unix: 0 в дочернем процессе, pid потомка в родителе
if pid == 0: os._exit(3)  # потомок завершается штатно с кодом 3
_, status = os.waitpid(pid, 0)  # родитель дожидается потомка и получает его статус
print(os.WIFEXITED(status))  # → True — потомок вышел сам, через exit
print(os.WEXITSTATUS(status))  # → 3 — код возврата, читать его можно только при WIFEXITED
print(os.WIFEXITED(os.system('kill -9 $$')))  # → False — процесс убит сигналом, а не завершился сам

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности