跳转到主要内容

像老板一样分支你的进程

项目描述

像老板一样分支你的进程

import forkme
import logging
import os
from time import sleep


logging.basicConfig(level=logging.DEBUG)


def main():
    print("Master proccess has PID: {0}".format(os.getpid()))
    forkme.fork(4)
    print(
        "Proceess #{id} has PID: {pid}".format(
            id=forkme.get_id(),
            pid=os.getpid()
        )
    )
    sleep(1)


if __name__ == '__main__':
    main()

此代码将创建4个分支。当你尝试运行它时,你会看到类似这样的内容

Master proccess has PID: 7437
INFO:forkme:Starting 4 processes
Proceess #2 has PID: 7440
Proceess #1 has PID: 7439
Proceess #3 has PID: 7441
Proceess #0 has PID: 7438
INFO:forkme:Child with PID: 7439 Number: 1 exited normally
INFO:forkme:Child with PID: 7441 Number: 3 exited normally
INFO:forkme:Child with PID: 7440 Number: 2 exited normally
INFO:forkme:Child with PID: 7438 Number: 0 exited normally

Forkme将控制分支。当子进程被杀死或以非零代码退出时,它将立即重新启动。例如。

Master proccess has PID: 7579
INFO:forkme:Starting 4 processes
Proceess #0 has PID: 7580
Proceess #1 has PID: 7581
Proceess #2 has PID: 7582
Proceess #3 has PID: 7583
WARNING:forkme:Child with PID: 7580 Number: 0 killed by signal 9, restarting
Proceess #0 has PID: 7584
INFO:forkme:Child with PID: 7581 Number: 1 exited normally
INFO:forkme:Child with PID: 7582 Number: 2 exited normally
INFO:forkme:Child with PID: 7583 Number: 3 exited normally
INFO:forkme:Child with PID: 7584 Number: 0 exited normally

项目细节


下载文件

下载适合您平台的应用程序文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

forkme-0.11.tar.gz (2.8 kB 查看哈希值)

上传时间:

构建分发

forkme-0.11-py2-none-any.whl (4.3 kB 查看哈希值)

上传时间: Python 2

由以下支持