• python fork函数


    import os
    print('---父进程id:%s----'%(os.getpid()))
    pid=os.fork()#只能在liunx环境下执行
    print('---%s---' % (os.getpid()))
    if pid==0:
        print('我是子进程%s,父进程%s' % (os.getpid(),os.getppid()))
    else:
        print('父进程%s,我创建的子进程%s'% (os.getpid(),pid))
    

    输出效果如下:

    ---父进程id:30181----
    ---30181---
    父进程30181,我创建的子进程30182
    ---30182---
    我是子进程30182,父进程30181

    说明:

    要了解多进程,先来了解操作系统。在类linux操作系统上,操作系统提供一个fork()系统调用。这个函数和普通的函数不太一样。普通的函数调用一次返回一次,fork()函数调用一次返回两次,为什么呢?因为操作系统自动把当前进程【父进程】复制了一份【子进程】,然后分别在父进程和子进程内返回。子进程永远返回0,而父进程返回子进程的ID,这样做是因为父进程可以fork出很多子进程,父进程需要记住每个子进程的ID,而子进程只需要调用getppid()函数就可以拿到父进程的ID

  • 相关阅读:
    PHP的错误和异常处理
    PHP 页面编码声明方法详解(header或meta)
    Sentinel实现Redis高可用
    Linux学习系列之Iptables
    Python学习系列之logging模块
    [scrapy]Item Loders
    [scrapy]实例:爬取jobbole页面
    mongo开启验证
    python创建虚拟环境
    elastalert邮件报警
  • 原文地址:https://www.cnblogs.com/mahailuo/p/8470992.html
Copyright © 2020-2023  润新知