Skip to content

Instantly share code, notes, and snippets.

@lukexie
Forked from cannium/gist:7aa58f13c834920bb32c
Last active February 24, 2019 13:16
Show Gist options
  • Save lukexie/e5c545c5e0f1e4661f376d30c67e32d0 to your computer and use it in GitHub Desktop.
Save lukexie/e5c545c5e0f1e4661f376d30c67e32d0 to your computer and use it in GitHub Desktop.
example for double fork
# c.f. https://stackoverflow.com/a/5386753
import os
import sys
print('pre-fork: pid=%d, pgid=%d, sid=%d' % (os.getpid(), os.getpgid(0), os.getsid(0)))
pid = os.fork()
if pid > 0:
sys.exit(0)
print('1st_fork: pid=%d, pgid=%d, sid=%d' % (os.getpid(), os.getpgid(0), os.getsid(0)))
os.setsid()
print('setsid : pid=%d, pgid=%d, sid=%d' % (os.getpid(), os.getpgid(0), os.getsid(0)))
pid = os.fork()
if pid > 0:
sys.exit(0)
print('2nd_fork: pid=%d, pgid=%d, sid=%d' % (os.getpid(), os.getpgid(0), os.getsid(0)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment