all Python 3Linux · macOSosfunction
os.tcsetpgrp
os — sessions and process groups
Set the process group controlling a terminal. Availability: Unix.
Syntax
os.tcsetpgrp(...)
It hands the terminal's foreground to another group — how a shell implements fg. A background process calling it may receive SIGTTOU and stop unless it blocks the signal. It mostly serves shell authors.
Examples
import os
fd = os.open('/dev/tty', os.O_RDWR) # → ? только Unix: дескриптор управляющего терминала
print(os.tcsetpgrp(fd, os.getpgrp())) # → ? только Unix: None — своя группа выведена на передний план
print(os.tcgetpgrp(fd) == os.getpgrp()) # → ? True: tcsetpgrp/tcgetpgrp — пара «записать/прочитать» группу терминала
os.tcsetpgrp(fd, 999999) # → OSError: группы с таким id в текущей сессии нет
os.tcsetpgrp(fd, os.getpgrp()) # → ? из фонового процесса ядро пришлёт SIGTTOU и остановит его
See also
Common errors
Open in the full glossarydocs.python.orgReport an inaccuracy