python多任务(2. 进程)

Posted 小白一生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python多任务(2. 进程)相关的知识,希望对你有一定的参考价值。

进程间通信 Queue

import  multiprocessing


def download_from_web(q):
    # 模拟从网上下载数据
    data = [11, 22, 33, 44]
    for i in data:
        q.put(i)
    print("---数据下载已写入到队列---")


def analysis_data(q):
    waitting_analysis_data = list()
    while not q.empty():
        waitting_analysis_data.append(q.get())
    print(str(waitting_analysis_data) + " <<< 数据拼接完毕")


def main():

    # 1. 创建一个队列
    q = multiprocessing.Queue(4)
    # 2. 创建多个进程,将队列的引用当作实参进行传递到里面
    p1 = multiprocessing.Process(target=download_from_web, args=(q,))
    p2 = multiprocessing.Process(target=analysis_data, args=(q,))

    p1.start()
    p2.start()

if __name__ == '__main__':
    main()

以上是关于python多任务(2. 进程)的主要内容,如果未能解决你的问题,请参考以下文章

如何理解python的多线程编程

python之多进程

Python之多任务编程线程

[Python3] 043 多线程 简介

python 多进程,多线程,协程

python多任务(2. 进程)