python创建进程fork用法

yipeiwu_com6年前Python基础

本文实例讲述了python创建进程fork用法。分享给大家供大家参考。具体分析如下:

#!coding=utf-8
import os ,traceback
import time
'''
fork()系统调用是Unix下以自身进程创建子进程的系统调用,
一次调用,两次返回,如果返回是0,
则是子进程,如果返回值>0,则是父进程(返回值是子进程的pid)
'''
source = 10
i = 0
try:
  print '***********************'
  pid = os.fork()
  #这里会返回两次,所以下面的省略号会输出2次
  print '......'
  if pid == 0:#子进程
    print "this is child process"
    source = source - 1
    print 'child process source is ',source
    time.sleep(10)
    print 'child sleep done'
  else:  #父进程
    print "this is parent process"
    print 'parent process source is ',source
    time.sleep(10)
    print 'parent sleep done'
  print source
except:
  traceback.print_exc()

输出如下:

***********************
......
this is child process
child process source is 9
......
this is parent process
parent process source is 10
child sleep done
9
parent sleep done
10

希望本文所述对大家的Python程序设计有所帮助。

相关文章

在Pycharm terminal中字体大小设置的方法

如下所示: file->settings->Editor->General->Console里面的console commands history size 以上...

对于Python异常处理慎用“except:pass”建议

翻译自StackOverflow中一个关于Python异常处理的问答。 问题:为什么“except:pass”是一个不好的编程习惯? 我时常在StackOverflow上看到有人评论关于...

Flask和Django框架中自定义模型类的表名、父类相关问题分析

本文实例分析了Flask和Django框架中自定义模型类的表名、父类相关问题。分享给大家供大家参考,具体如下: 一. Flask和Django中定义表名(执行迁移后生成)的方式和flas...

如何用itertools解决无序排列组合的问题

最近我作为Python菜鸟一枚开始征战Codewars,所以打算在这里记下遇到的有意思的题目。今天这第一题叫做“Best Travel”: John和Mary计划去一些小镇旅行。Mary...

flask中的wtforms使用方法

flask中的wtforms使用方法

一、简单介绍flask中的wtforms WTForms是一个支持多个web框架的form组件,主要用于对用户请求数据进行验证。 安装: pip3 install wtforms...