下面是一个示例程序,它使用Python的concurrent.futures
模块中的线程池来实现多线程操作:
import concurrent.futuresdef worker(arg):print(f'Working on {arg}')return arg * 2if __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
方法提交了两个任务给线程池,并获取了它们的返回结果。最后,我们打印了任务的返回结果。由于线程池会自动管理线程的创建和销毁,我们不需要手动处理线程的创建和管理,从而简化了多线程编程的复杂性。