• 多进程编程


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

    下面记录一下多进程编程的别一种方式,即使用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()
  • 相关阅读:
    Kettle初使用
    Datax初使用
    代码层次上的软件质量属性
    第二周周总结
    软件质量属性---可修改性
    淘宝网中的软件质量属性
    第一周周总结
    2020寒假(12)
    2020寒假(11)
    2020寒假(10)
  • 原文地址:https://www.cnblogs.com/z-qinfeng/p/12064092.html
Copyright © 2020-2023  润新知