首页 > 编程语言 > 详细

Python 多进程

时间:2019-12-03 22:46:01      阅读:64      评论:0      收藏:0      [点我收藏+]

1. 进程

# 这段代码在pycharm中可能不出结果,可以放到cmd中运行
import threading
import multiprocessing
import time

def subTest():
    print(This is in Process:%s thread: %s % (multiprocessing.current_process(),threading.get_ident()))

def test():
    time.sleep(2)
    print(This is process: %s % multiprocessing.current_process())  # 打印当前进程
    threading.Thread(target=subTest,).start()   # 在进程中启动一个线程

if __name__ == __main__:
    for i in range(10):
        p = multiprocessing.Process(target=test,)  # 生成进程
        p.start()

2. 父进程

# 这段代码只有在命令行下才能正常打印出结果,在pycharm中不出结果
import threading
import multiprocessing
import time
import os

def subTest():
    print(fppid:{os.getppid()} , pid:{os.getpid()})  # 打印父进程id,和当前进程id

def test():
    time.sleep(2)
    print(This is process: %s % multiprocessing.current_process())  # 打印当前进程
    threading.Thread(target=subTest,).start()   # 在进程中启动一个线程

if __name__ == __main__:
    subTest()
    for i in range(2):
        p = multiprocessing.Process(target=test,)  # 生成进程
        p.start()

 

ppid:4276 , pid:9356                       # ppid:4267是系统终端的进程,这里是cmd.exe,由系统终端创建出了pid:9356是当前的进程
This is process: <Process name=Process-2 parent=9356 started>  # 子进程,由父进程9356创建而来
This is process: <Process name=Process-1 parent=9356 started>  # 子进程,由父进程9356创建而来
ppid:9356 , pid:9648   # 子进程的线程打印的信息,可以看到父进程的id和当前进程的id
ppid:9356 , pid:5288

 

Python 多进程

原文:https://www.cnblogs.com/wztshine/p/11979876.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!