码迷,mamicode.com
首页 > 系统相关 > 详细

多进程编程

时间:2019-12-19 00:09:42      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:close   order   bsp   ESS   family   tip   style   htm   记录   

多线程与多进程的比较 这一篇中记录了多进程编程的一种方式.

下面记录一下多进程编程的别一种方式,即使用multiprocessing编程

import multiprocessing
import time


def get_html(n):
    time.sleep(n)
    print(sub process %s % n)
    return n


if __name__ == __main__:
    # 多进程编程
    process = multiprocessing.Process(target=get_html, args=(2,))
    process.start()
    print(process.pid)  # 进程号
    process.join()
    print(main process success!)

    # 使用多进程池编程
    pool = multiprocessing.Pool(multiprocessing.cpu_count())
    # result =pool.apply_async(get_html, (3,))
    # # 关闭pool
    # pool.close()
    # # 等待所有任务完成
    # pool.join()
    # print(result.get())

    # 使用imap方法, 有序执行,且直接返回结果值
    # for result in pool.imap(get_html, [1, 5, 3]):
    #     print(‘{} sleep success‘.format(result))
    # pool.close()

    # imap_unordered 与imap相似,但是谁先执行完成,谁先返回结果
    # for result in pool.imap_unordered(get_html, [1, 5, 3]):
    #     print(‘{} sleep success‘.format(result))
    # pool.close()

多进程编程

标签:close   order   bsp   ESS   family   tip   style   htm   记录   

原文地址:https://www.cnblogs.com/z-qinfeng/p/12064092.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!