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

相关推荐
CodeCraft Studio20 小时前
JavaScript图表库 DHTMLX Diagram 6.1 重磅发布:全新PERT模式上线,项目可视化能力再升级!
开发语言·javascript·ecmascript·dhtmlx·图表开发·diagram·javascript图表库
程序员阿明20 小时前
spring security 6的知识点总结
java·后端·spring
Dxy123931021620 小时前
Python的正则表达式如何做数据校验
开发语言·python·正则表达式
UP_Continue20 小时前
C++--右值和移动语义
开发语言·c++
Daily Mirror20 小时前
Day38 MLP神经网络的训练
python
李子园的李20 小时前
Java函数式接口——渐进式学习
java
yaoh.wang20 小时前
力扣(LeetCode) 66: 加一 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
running up21 小时前
Spring Bean生命周期- BeanDefinition 加载与 BeanFactoryPostProcessor BeanPostProcessor
java·后端·spring
222you21 小时前
Java线程的三种创建方式
java·开发语言
脸大是真的好~21 小时前
计算机408基础相关面试题-备用,不推荐
java