Python Glossary English

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

os.WCOREDUMP

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

Проверяет, оставил ли завершённый процесс дамп памяти (core). Доступно на Unix.

Синтаксис

os.WCOREDUMP(...)

Дамп появится, только если это разрешено: ограничение ulimit -c часто равно нулю, а на современных Linux дампы перехватывает systemd-coredump. Поэтому ложное значение не значит, что падения не было. Проверять имеет смысл только после истинного WIFSIGNALED.

Примеры

import os
pid = os.fork()  # → ? только Unix: 0 в дочернем процессе, pid потомка в родителе
if pid == 0: os.abort()  # потомок аварийно падает по SIGABRT
_, status = os.waitpid(pid, 0)  # родитель забирает статус завершения потомка
print(os.WIFSIGNALED(status))  # → True — потомок убит сигналом, а не вышел сам
print(os.WCOREDUMP(status))  # → True, если система разрешила записать core (ulimit -c unlimited), иначе False
print(os.WCOREDUMP(0))  # → False — после штатного завершения дампа нет

См. также

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