Python Glossary English

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

os.wait3

os — ожидание процессов

Как wait, но дополнительно возвращает информацию об использовании ресурсов (rusage). Доступно на Unix.

Синтаксис

os.wait3(...)

Как wait, ждёт любого потомка, и вдобавок возвращает объект resource.struct_rusage с расходом ресурсов: процессорным временем, пиковой памятью (ru_maxrss), числом переключений. Единицы ru_maxrss различаются: на Linux — килобайты, на macOS — байты.

Примеры

import os
if os.fork() == 0: os._exit(0)  # → ? только Unix: ребёнок завершается сразу, родителю будет кого дождаться
child, status, rusage = os.wait3(0)  # options обязателен: 0 — блокирующее ожидание любого ребёнка
print(child, os.waitstatus_to_exitcode(status))  # → ? только Unix: pid ребёнка и 0, например «12347 0»
print(rusage.ru_maxrss)  # → ? только Unix: пиковая память ребёнка (на Linux — в килобайтах), например 3200 — этого os.wait не возвращает
print(os.wait3(os.WNOHANG))  # → ChildProcessError — WNOHANG не блокирует, но и детей уже не осталось

См. также

Частые ошибки

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