写一个python基于线程池的多线程

下面是一个示例程序,它使用Python的concurrent.futures模块中的线程池来实现多线程操作:

python 复制代码
import concurrent.futures

def worker(arg):
    print(f'Working on {arg}')
    return arg * 2

if __name__ == '__main__':
    # 创建线程池
    with concurrent.futures.ThreadPoolExecutor() as executor:
        # 提交任务给线程池
        future1 = executor.submit(worker, 1)
        future2 = executor.submit(worker, 2)
        
        # 获取任务的返回结果
        result1 = future1.result()
        result2 = future2.result()
        
        print(f'Result 1: {result1}')
        print(f'Result 2: {result2}')

在这个示例中,我们定义了一个名为worker的函数,它接收一个参数并返回参数的两倍。然后,在主程序中,我们使用线程池的submit方法提交了两个任务给线程池,并获取了它们的返回结果。最后,我们打印了任务的返回结果。由于线程池会自动管理线程的创建和销毁,我们不需要手动处理线程的创建和管理,从而简化了多线程编程的复杂性。

相关推荐
胡童嘉2 分钟前
C语言考研《谭浩强C语言》教材第一章理论+实践汇总
c语言·开发语言·考研
千云3 分钟前
问题排查报告:一次因元空间溢出导致的CPU飙升与接口超时
java·后端
初心未改HD3 分钟前
Go语言Slice切片底层原理深度解析
开发语言·golang
Full Stack Developme4 分钟前
MyBatis-Plus 注解教程
java·spring·mybatis
TechWayfarer7 分钟前
离线IP数据库内网部署:场景选型与热更新落地实践
网络·数据库·python·网络协议·tcp/ip
WL_Aurora8 分钟前
备战蓝桥杯国赛【day1】
python·蓝桥杯
程序员三明治10 分钟前
【AI】Java 调用大模型 API 实战:从 OpenAI 协议到 SiliconFlow 流式响应解析
java·开发语言·人工智能
szccyw010 分钟前
如何防止 Laravel 中因动态列名导致的 SQL 注入风险
jvm·数据库·python
zhangchaoxies11 分钟前
团队版Navicat专属功能:如何共享数据库架构ER模型_核心机制解析
jvm·数据库·python
世界尽头与你11 分钟前
Go 语言高级函数特性
开发语言·golang