老师,关于os.fork的问题
来源:11-10 multiprocessing 多进程编程
KeithTt
2018-08-19
import os
import time
# fork一个子进程,fork只能用于linux/unix中
pid = os.fork()
print('test')
if pid == 0:
print('子进程: {}的父进程是: {}.'.format(os.getpid(), os.getppid()))
else:
print('我是父进程:{}.'.format(os.getpid()))首先,有个地方老师写错了,就是 print('我是父进程:{}.'.format(os.getpid())) 这里老师写的是 print('我是父进程:{}.'.format(pid))

其次,我在mac上不能重现老师的状况,我不让主进程sleeep,一样可以正常结束,而且子进程的父进程依然是主进程,并没有被init接管。我在云主机试了一下,跟在mac上一样,请问老师这是什么状况?
test 我是父进程:6861. test 子进程: 6862的父进程是: 6861.
还有就是,如果子进程只执行fork以下的代码,那如果写了time.sleep子进程会找不到time模块吗?
感谢老师!!!
写回答
2回答
-
bobby
2020-05-26
这个地方我刚才试了一下 ,这里确实有点问题,我需要排查一下具体原因
00 -
bobby
2018-09-04
你加我的qq 442421039 我看看
00
相似问题