add some multiprocess and race condition examples

This commit is contained in:
Mia von Steinkirch 2020-03-04 10:12:53 -08:00
parent 5224dc91ca
commit be98abd3b5
4 changed files with 57 additions and 4 deletions

View file

@ -0,0 +1,39 @@
#!/usr/bin/env python3
import time
import sys
import multiprocessing
def daemon():
p = multiprocessing.current_process()
print('Starting: {}, {}'.format(p.name, p.pid))
sys.stdout.flush()
time.sleep(2)
print('Exiting : {}, {}'.format(p.name, p.pid))
sys.stdout.flush()
def non_daemon():
p = multiprocessing.current_process()
print('Starting: {}, {}'.format(p.name, p.pid))
sys.stdout.flush()
print('Exiting : {}, {}'.format(p.name, p.pid))
sys.stdout.flush()
if __name__ == '__main__':
d = multiprocessing.Process(name='daemon', target=daemon)
d.daemon = True
n = multiprocessing.Process(name='non-daemon', target=non_daemon)
n.daemon = False
d.start()
time.sleep(1)
n.start()