首页 > 编程语言 >[Python]异步concurrent.futures并发

[Python]异步concurrent.futures并发

时间:2023-03-31 09:35:48浏览次数:30  
标签:异步 Python futures concurrent print import ThreadPoolExecutor

'''
concurrent.futures 模块提供异步执行可调用对象高层接口,使用线程池 ThreadPoolExecutor 或
进程池 ProcessPoolExecutor 来实现异步。目的是保证服务稳定运行的前提下提供最大的并发能力。
'''

from concurrent.futures import Future
from concurrent.futures import ThreadPoolExecutor
import time



def task(a, b):
    time.sleep(2)

    return a + b


def callback(f: Future):
    print(f.result())


pool = ThreadPoolExecutor(5)
print("开始了")
for i in range(5):
    # 生成一个线程池,大小为5
    pool.submit(task, i, i).add_done_callback(callback)  # 异步执行,绑定回调函数获取结果
print("结束了")

'''
开始了
结束了
0
8
6
4
2
'''

标签:异步,Python,futures,concurrent,print,import,ThreadPoolExecutor
From: https://www.cnblogs.com/leoshi/p/17275177.html

相关文章

  • use macOS terminal can not install MicroPython on Raspberry Pi Pico bug All In O
    usemacOSterminalcannotinstallMicroPythononRaspberryPiPicobugAllInOne使用macOS终端无法在RaspberryPiPico上安装MicroPythonbugMicroPython环境搭建您可以通过USB将Pico连接到计算机,然后将文件拖放到它上面来对Pico进行编程,因此我们整理了......
  • python+playwright 学习-43 Pyinstaller打包生成独立的可执行文件。
    前言playwright与Pyinstaller结合使用来创建独立的可执行文件。本地化安装有同学提到说想打成一个exe的独立包,但是执行playwrightinstall会默认把chromium,firefox和webkit三个浏览器安装到系统目录。这样打包的时候就找不到启动的浏览器文件。于是就想到把浏览器文件下......
  • Python魔力方法
    Python的魔术方法(MagicMethods)也称为双下划线方法(doubleunderscoremethod),以双下划线开头和结尾,用于重载类的特殊行为。可以使类的实例对象表现出像内置类型的行为,如加、减、乘、切片、比较等,增加代码的可读性和可维护性。以下是Python中一些重要的魔术方法:1.__init__方法__in......
  • python基础学习总结
    python关键字也是以下划线或者字母开头。python关键字可以通过导包获取关键字如下: ['False','None','True','and','as','assert','async','await','break','class','continue'......
  • [Python]异步回调函数
    importasynciofromfunctoolsimportpartialfromasyncioimportFutureasyncdeff1():print(1)awaitasyncio.sleep(2)print(2)return"f1"defcallback1(future:Future):print(future.result())print("我是f1的回调函数&......
  • Python 3 vs Python 2 All In One
    Python3vsPython2AllInOnePython3.x与Python2.x版本区别https://www.runoob.com/python/python-2x-3x.htmlhttps://www.datacamp.com/blog/python-2-vs-3-everything-you-need-to-knowprintvsprint()如果Python2.x版本想使用使用Python3.x的print函......
  • Python 脚本接收命令行参数的多种方式 All In One
    Python脚本接收命令行参数的多种方式AllInOnesysargparseshellscripttensorflow...sys#!/usr/bin/envpython3#coding:utf8importsysargs=sys.argvprint("argslength:",len(args))print("argstype:",type(args))print("fu......
  • 跟着查老四学Python Day 3:数据结构与函数
    老猫:请您扮演一个python讲师,帮助一个没有代码经验的人自学python,以下是此前你设置的学习计划制定学习计划:将学习过程分为四个阶段,每个阶段关注不同的内容。第一周:掌握Python基础语法、数据类型、控制结构等。同时,学会如何在本地搭建Python开发环境。第二周:学习函数、模块、文件操......
  • Python计算机视觉基础实验3-显著性检测(HC&FC)
    一、实验基础图像显著性检测图像的显著性是指对于给定一副真实世界中的场景图像,人们会自动地识别出感兴趣区域,忽略掉不感兴趣的区域,即将注意力集中在图像中某些显著的部分区域。图像的注意预测,也称视觉显著性检测,指通过智能算法模拟人的视觉系统特点,预测人类的视觉凝视点(就是全神贯......
  • opencv-python 4.8. 图像金字塔
    理论通常,我们曾经使用恒定大小的图像。但在某些情况下,我们需要使用不同分辨率的(相同)图像。例如,在搜索图像中的某些内容时,如脸部,我们不确定该对象在所述图像中的大小。在这种情况下,我们需要创建一组具有不同分辨率的相同图像,并在所有图像中搜索对象。这些具有不同分辨率的图像被称......