码迷,mamicode.com
首页 > 编程语言 > 详细

以python代码解释fork系统调用

时间:2018-06-03 00:00:37      阅读:296      评论:0      收藏:0      [点我收藏+]

标签:created   process   ==   ESS   子进程   else   and   进程   AC   

import os

print(Process (%s) start... % os.getpid())
# Only works on Unix/Linux/Mac:
pid = os.fork()
print ("haha")
if pid == 0:
    print(I am child process (%s) and my parent is %s. % (os.getpid(), os.getppid()))
else:
    print(I (%s) just created a child process (%s). % (os.getpid(), pid))


"""
haha
haha
Process (876) start...
I (876) just created a child process (877).
I am child process (877) and my parent is 876.
"""

执行到os.fork()时,发起fork系统调用,操作系统复制父进程得到子进程。fork系统调用完毕,返回给父进程子进程的id号,返回给子进程0,然后父子进城开始执行。我们可以看到haha被打印了两次,更加说明了子进程是复制父进程得来的

以python代码解释fork系统调用

标签:created   process   ==   ESS   子进程   else   and   进程   AC   

原文地址:https://www.cnblogs.com/saolv/p/9127437.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!