主页 > 知识库 > Python 线程池模块之多线程操作代码

Python 线程池模块之多线程操作代码

热门标签:如何申请400电话费用 沈阳防封电销卡品牌 江西省地图标注 池州外呼调研线路 沈阳人工外呼系统价格 武汉外呼系统平台 富锦商家地图标注 外呼系统哪些好办 沈阳外呼系统呼叫系统

1、线程池模块

引入

from concurrent.futures import ThreadPoolExecutor

2、使用线程池

一个简单的线程池使用案例

from concurrent.futures import ThreadPoolExecutor
import time

pool = ThreadPoolExecutor(10, 'Python')

def fun():
    time.sleep(1)
    print(1, end='')


if __name__ == '__main__':
    # 列表推导式
    [pool.submit(fun) for i in range(20) if True]
from concurrent.futures import ThreadPoolExecutor
import time

pool = ThreadPoolExecutor(10, 'Python')

def fun(arg1,arg2):
    time.sleep(1)
    print(arg1, end=' ')
    print(arg2, end=' ')


if __name__ == '__main__':
    # 列表推导式
    [pool.submit(fun,i,i) for i in range(20) if True]
    # 单个线程的执行
    task = pool.submit(fun,'Hello','world')
    # 判断任务执行状态
    print(f'task status {task.done()}')
    time.sleep(4)
    print(f'task status {task.done()}')

    # 获取结果的函数是阻塞的,所以他会等线程结束之后才会输出
    print(task.result())


 3、获取结果

阻塞等待

print(task.result())

批量获取结果

for future in as_completed(all_task):
    data = future.result()

阻塞主线程,等待执行结束再执行下一个业务

# 等待线程全部执行完毕
wait(pool.submit(fun,1,2),return_when=ALL_COMPLETED)
print('')

以上就是Python 线程池模块之多线程操作代码的详细内容,更多关于Python 线程池模块的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
  • Python爬虫之线程池的使用
  • python线程池的四种好处总结
  • python爬虫线程池案例详解(梨视频短视频爬取)
  • python线程池 ThreadPoolExecutor 的用法示例
  • 实例代码讲解Python 线程池
  • Python 如何创建一个线程池
  • python线程池如何使用
  • 解决python ThreadPoolExecutor 线程池中的异常捕获问题
  • Python定时器线程池原理详解
  • Python 使用threading+Queue实现线程池示例
  • Python线程池的正确使用方法

标签:潜江 吕梁 通辽 铜川 株洲 阿里 常德 黑龙江

巨人网络通讯声明:本文标题《Python 线程池模块之多线程操作代码》,本文关键词  Python,线程,池,模块,之多,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《Python 线程池模块之多线程操作代码》相关的同类信息!
  • 本页收集关于Python 线程池模块之多线程操作代码的相关信息资讯供网民参考!
  • 推荐文章