python线程池回调函数怎么使用

49次阅读
没有评论

共计 619 个字符,预计需要花费 2 分钟才能阅读完成。

在 Python 中,可以使用 concurrent.futures 模块中的 ThreadPoolExecutor 来创建线程池,并利用其提供的 submit 方法来提交任务。如果需要在任务完成后执行回调函数,可以使用 add_done_callback 方法来指定回调函数。

下面是一个简单的示例代码:

from concurrent.futures import ThreadPoolExecutor

# 定义一个回调函数
def callback(result):
    print(" 任务完成,结果为:", result)

# 定义一个任务函数
def task(x, y):
    return x + y

# 创建线程池
with ThreadPoolExecutor() as executor:
    # 提交任务,并指定回调函数
    future = executor.submit(task, 2, 3)
    future.add_done_callback(callback)

在上述示例中,我们首先定义了一个回调函数 callback 和一个任务函数 task,然后创建了一个线程池。通过executor.submit 方法提交了一个任务,并通过 future.add_done_callback 方法指定了回调函数。当任务完成后,回调函数将会被执行,并传入任务的返回结果作为参数。

需要注意的是,回调函数将在线程池中的某个线程中执行,因此在回调函数中应避免使用共享资源,或者需要使用锁来保护共享资源的访问。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-21发表,共计619字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)