все Python 3Linux · macOSosфункция
os.setpgrp
os — сессии и группы процессов
Делает текущий процесс лидером новой группы процессов. Доступно на Unix.
Синтаксис
os.setpgrp(...)
То же, что os.setpgid(0, 0): процесс становится лидером новой группы. После этого Ctrl+C в терминале, адресованный группе переднего плана, до него может не дойти. Удобно, чтобы затем остановить процесс вместе с потомками одним killpg.
Примеры
import os
print(os.getpgrp() == os.getpid()) # → ? только Unix: False, если процесс запущен shell'ом как часть чужой группы
os.setpgrp() # → ? только Unix: вызывается без аргументов, процесс становится лидером новой группы
print(os.getpgrp() == os.getpid()) # → ? только Unix: True — PGID новой группы равен PID процесса
print(os.getpgrp() == os.getpgid(0)) # → ? только Unix: True — os.setpgrp() делает то же, что os.setpgid(0, 0)
os.setsid() # → PermissionError — процесс уже лидер группы, новую сессию так не создать
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности