写一个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方法提交了两个任务给线程池,并获取了它们的返回结果。最后,我们打印了任务的返回结果。由于线程池会自动管理线程的创建和销毁,我们不需要手动处理线程的创建和管理,从而简化了多线程编程的复杂性。

相关推荐
zhaoyong22214 小时前
SQL如何统计每个用户的首次行为时间_MIN聚合与分组
jvm·数据库·python
tongluowan00714 小时前
一个请求在Spring MVC 中是怎么流转的
java·spring·mvc
2501_9010064714 小时前
C#怎么实现配置热更新 C#如何在运行时动态刷新配置文件不需要重启程序【技巧】
jvm·数据库·python
m0_4708576414 小时前
HTML怎么创建响应式图片备选方案_HTML srcset与sizes结构【详解】
jvm·数据库·python
夜郎king15 小时前
Spring AI 对接大模型开发易错点总结与实战解决办法
java·人工智能·spring
InfinteJustice15 小时前
踩坑分享C 语言文件操作全攻略:从基础读写到随机访问与缓冲区原理
c语言·开发语言·microsoft
码云数智-大飞15 小时前
滥用Lombok的@EqualsAndHashCode导致线上事故复盘
开发语言
yong999015 小时前
C# 实时查看硬件使用率(CPU 内存 硬盘 网络)
开发语言·网络·c#
oradh15 小时前
Oracle数据库中的Java概述
java·数据库·oracle·sql基础·oracle数据库java概述
组合缺一15 小时前
Java AI 框架三国杀:Solon AI vs Spring AI vs LangChain4j 深度对比
java·人工智能·spring·ai·langchain·llm·solon