Python 多进程编程:使用 os.fork() 创建子进程并输出内容

本文介绍如何使用 Python 的 os.fork() 函数创建两个子进程,分别输出不同的内容。

示例代码:

import os

def child1():
    print('E')

def child2():
    print('F')

pid1 = os.fork()

if pid1 == 0:  # 子进程1
    child1()
else:
    pid2 = os.fork()
    if pid2 == 0:  # 子进程2
        child2()
    else:  # 父进程
        os.waitpid(pid1, 0)
        os.waitpid(pid2, 0)

输出结果:

E
F

代码解析:

  1. 导入 os 模块: import os
  2. 定义子进程函数: child1()child2() 分别用于输出 'E' 和 'F'。
  3. 创建第一个子进程: pid1 = os.fork()
  4. 判断是否为子进程1: if pid1 == 0:
    • 如果是子进程1,执行 child1() 函数输出 'E'。
  5. 创建第二个子进程: pid2 = os.fork()
  6. 判断是否为子进程2: if pid2 == 0:
    • 如果是子进程2,执行 child2() 函数输出 'F'。
  7. 父进程等待子进程完成: os.waitpid(pid1, 0)os.waitpid(pid2, 0)

总结:

本示例展示了如何使用 os.fork() 函数创建多个子进程,每个子进程执行不同的任务,并通过 os.waitpid() 函数等待子进程完成。这种多进程编程模式可以提高程序效率,尤其适用于需要并行处理大量任务的场景。

Python 多进程编程:使用 os.fork() 创建子进程并输出内容

原文地址: https://www.cveoy.top/t/topic/jJbh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录