все Python 3osфункция
os.getppid
os — процесс
Возвращает PID родительского процесса.
Синтаксис
os.getppid()
Если родитель завершился, на Unix вернётся PID процесса init (1) или назначенного «приёмного» процесса, а на Windows — прежний номер, который мог уже достаться чужому процессу. Поэтому проверять «жив ли родитель» по getppid надёжно только на Unix, сравнивая с исходным значением.
Примеры
import os
print(os.getppid()) # → ? PID родительского процесса, например 4312 (для скрипта из терминала — это PID оболочки)
print(os.getppid() == os.getpid()) # → ? False: getppid() возвращает родителя, а getpid() — сам процесс
if os.fork() == 0: print(os.getppid()) # → ? только Unix: дочерний процесс печатает PID родителя — то же число, что вернул os.getpid() до fork
ppid = os.getppid() # → ? ловушка: если родитель уже завершился, процесс-сирота «усыновляется» — на Linux обычно 1 (init/systemd)
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности