`

python 两种多进程池,线程池调带结果异步返回

阅读更多
python 两种多进线程池,线程池调

import multiprocessing
from concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutor

def t1(n):

    # print('进程池第{0}次调用'.format(n))
return n

# 带资源回收的进程池
def m_process_pool():
    pool = multiprocessing.Pool(processes=4, maxtasksperchild=3)
    r = []
    for i in range(10):
        r.append(pool.apply_async(t1, (i,)))
    pool.close()
    pool.join()

    for i in r:
        print(i.get())

# 不带资源回收的进程池
def process_pool():

    process_pool = ProcessPoolExecutor(max_workers=10)
    r = []
    for i in range(20):
        r.append(process_pool.submit(t1, (i)))
    for i in r:
        print(i.result())


def thread_pool():

    thread_pool = ThreadPoolExecutor(max_workers=10)
    r = []
    for i in range(20):
        r.append(thread_pool.submit(t1, (i)))
    for i in r:
        print(i.result())

分享到:
评论

相关推荐

    完整版 Python高级开发课程 高级教程 08 Python多线程 多进程开发.rar

    在Python的高级开发中,多线程和多进程是两个至关重要的概念,它们能够帮助开发者充分利用多核处理器的优势,提高程序的执行效率。本课程将深入探讨Python中的多线程和多进程开发,帮助学员掌握这两个关键知识点。 ...

    Python语言多进程与多线程设计探究.zip

    在Python编程中,多进程(Multiprocessing)和多线程(Multithreading)是两种并发执行的方式,它们允许程序在同一时间处理多个任务,提高程序的效率和响应速度。本资料"Python语言多进程与多线程设计探究"深入探讨...

    python并行编程pdf

    整个文档结构清晰地为读者介绍了Python并行编程的各个方面,从基础的并行概念到具体的多线程和多进程编程技术,再到分布式计算和异步编程的高级应用,为想要深入学习和应用Python进行并行计算的开发者提供了宝贵的...

    Python并发编程专题.zip

    Python提供了多种并发模型,包括多线程(threads)、多进程(processes)以及基于协程(coroutines)的异步编程。其中,由于全局解释器锁(GIL)的存在,多线程在CPU密集型任务上表现并不理想,但在IO密集型任务中...

    Python 线程池用法简单示例

    Python线程池(ThreadPoolExecutor)是Python标准库`concurrent.futures`的一部分,它提供了一种方便的方式来管理和控制并发执行的任务。线程池允许我们预先创建一定数量的线程,然后将任务提交到这个线程池中,由...

    Learning Concurrency in Python(pdf+epub+mobi+code_files).zip

    《Learning Concurrency in Python》是一本深入探讨Python并发编程的书籍,它涵盖了Python在多线程、多进程、异步I/O以及相关并发工具库的使用。这本书通过PDF、EPUB、MOBI三种电子书格式提供,同时包含了配套的代码...

    异步多线程Demo

    3. **异步编程**:异步编程是另一种提高程序响应性的方法,它允许程序在等待某个耗时操作(如I/O操作)完成时,不阻塞其他任务的执行。异步多线程结合了两者的优点,通过异步调用实现线程间的非阻塞通信,提升系统...

    python并发编程基础

    7. **并发编程中的挑战**:包括资源竞争、死锁(两个或更多进程互相等待对方释放资源而无法继续执行)、活锁(进程间相互让步导致无法继续执行)等问题。理解和解决这些问题对编写可靠的并发程序至关重要。 8. **...

    socket 异步服务器

    Socket分为同步和异步两种模式。同步Socket在等待数据传输时会阻塞进程,直到数据传输完成;而异步Socket则不会阻塞,它允许服务器同时处理多个客户端请求,提高了效率和响应速度。 异步Socket服务器的实现通常涉及...

    Python多线程编程(6寸)[归纳].pdf

    Python多线程编程是利用Python实现程序并行性的一种方式,尤其适合于处理异步、并发事务和资源密集型任务。在多线程环境中,多个线程可以同时执行,提高程序效率,尤其对于那些需要从多个输入源处理数据或者进行大量...

    Parallel Programming with Python

    3. **concurrent.futures**:提供了一个高层次的接口来执行异步操作,简化了多线程和多进程编程。 - **ThreadPoolExecutor**:用于创建线程池,适用于I/O密集型任务。 - **ProcessPoolExecutor**:类似于`...

    python如何控制进程或者线程的个数

    本文将深入探讨两种常用的方法:进程池(Process Pool)和线程池(Thread Pool),以及利用`queue`模块实现线程并发控制。 首先,我们来看进程池。Python的`multiprocessing`库提供了`Pool`类,用于管理一组进程,...

    Python3.6标准库手册中文说明

    `concurrent.futures`提供了高层的并发执行接口,可以方便地使用线程池和进程池。 8. **加密与安全**:`hashlib`模块提供了各种哈希算法,如MD5和SHA家族,用于数据校验。`ssl`模块则提供了SSL/TLS协议的支持,用于...

    Python函数式编程

    例如,在上文提到的例子中,若两个线程分别尝试设置和打印列表值,可能会导致输出结果混乱。为了解决此类问题,Python提供了锁机制。锁是一种同步工具,它可以确保同一时刻只有一个线程访问共享资源,避免了竞态条件...

    python多线程开发

    在Python中,有两种主要的线程实现:标准库中的`threading`模块和低级的`_thread`模块。本资料重点讲解`threading`模块,它是Python中更高级、功能更全面的线程管理工具。 1. **线程基础**: - **线程定义**:线程...

    java and python的面试总结.zip_Python 面试_Python面试_python总结_面试

    在IT行业中,Java和Python是两种非常流行的编程语言,它们各自有着独特的特性和应用场景,并且在面试中常常被考察。本资料集包含了关于Java和Python的面试知识点,旨在帮助求职者准备面试,提升成功几率。 首先,让...

    python教程-05-多线程的使用.ev4.rar

    在Python中,有两个主要的模块用于实现多线程:`threading`和`_thread`。`threading`模块是更高级、功能更丰富的选项,通常在实际开发中被广泛使用。 1. **线程对象与创建**: - 使用`threading.Thread()`创建一个...

    Python Spider TaskCity.rar

    7. **多线程或异步爬虫**:对于大规模数据抓取,可以使用多线程或多进程来提高效率。Python的`concurrent.futures`模块提供了线程池和进程池的接口,可以方便地实现并发爬取。此外,还可以利用`asyncio`库实现异步...

Global site tag (gtag.js) - Google Analytics