all Python 3Linux · macOSosfunction
os.setpgrp
os — sessions and process groups
Make the current process a process-group leader. Availability: Unix.
Syntax
os.setpgrp(...)
The same as os.setpgid(0, 0): the process becomes the leader of a new group. After that Ctrl+C in the terminal, aimed at the foreground group, may no longer reach it. It is handy for later stopping the process with its children via a single killpg.
Examples
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 — процесс уже лидер группы, новую сессию так не создать
See also
Open in the full glossarydocs.python.orgReport an inaccuracy