首页 > 其他分享 >线程池

线程池

时间:2023-10-24 17:02:29浏览次数:34  
标签:__ res list 线程 print pool

code

import os
import time
from concurrent.futures.thread import ThreadPoolExecutor


def test(n):
    print(f'n:{n}-os.getpid:{os.getpid()}')
    time.sleep(2)
    return 'hello'


# 定义一个回调函数,异步提交完后,有结果自动调用该函数
def call_back(n):
    print(f'nn;{n}')
    print(f'callback:n.result:{n.result()}')


if __name__ == '__main__':
    pool = ThreadPoolExecutor(5)
    print('zhu')
    t_list = []
    for i in range(10):
        res = pool.submit(test, i)
        # res = pool.submit(test, i).add_done_callback(call_back)
        t_list.append(res)
    print(f't_list:{t_list}')

    pool.shutdown()  # 等待线程池中所有任务运行完毕,关闭线程池

  

标签:__,res,list,线程,print,pool
From: https://www.cnblogs.com/tslam/p/17785229.html

相关文章

  • 升讯威在线客服系统的并发高性能数据处理技术:为多线程处理同步数据
    我在业余时间开发维护了一款免费开源的升讯威在线客服系统,也收获了许多用户。对我来说,只要能获得用户的认可,就是我最大的动力。最近客服系统成功经受住了客户现场组织的压力测试,获得了客户的认可。客户组织多名客服上线后,所有员工同一时间打开访客页面疯狂不停的给在线客服发消......
  • 在C++中,互斥变量(std::mutex)是用于保护共享资源的重要工具,但它们确实有一些局限性,其中
    在C++中,互斥变量(std::mutex)是用于保护共享资源的重要工具,但它们确实有一些局限性,其中之一是无法保证包含指针的区域的多线程安全。这是因为互斥锁本质上只能保护它们所保护的代码块,而不会考虑指针指向的数据。下面是一些与互斥锁和指针相关的常见问题和注意事项:共享数据的复制:......
  • Chromium 消息循环和线程池详解
    Chromium中的多线程机制由base库提供,要理解Chromium中的多线程机制,首先要理解的概念就是 base::MessageLoop 和 base::TaskScheduler ,它们两个是Chromium多线程的基础1. MessageLoop详解base::MessageLoop 代表消息循环,它不会主动创建新的线程,默认情况下它使用当前......
  • Java使用多线程异步执行批量更新操作方法
    一、核心技术Java提供了Executor框架来实现多线程任务的执行。我们可以通过创建ExecutorService对象来管理线程池,然后将任务提交给这个线程池执行。Executor框架的优点在于,它可以自动管理线程数量,以最大化利用CPU和内存资源。二、具体实现方法1、创建一个数据更新任务类,实现Run......
  • 开源利器推荐:美团动态线程池框架的接入分享及效果展示
    一款美团动态线程池的框架DynamicTp终于开源了,接入简单,侵入性也不强,支持的接入方式也多,总体还是很不错的。我认为尤其适合中小企业SpringBoot应用接入,是一款线程池监控的利器。前言蛮早前有些过关于线程池的使用及参数的一些参考配置,有兴趣的可以翻看以前的博文,但终......
  • 杰哥教你面试之一百问系列:java多线程
    java多线程是java面试中的高频问题,如何才能在面试中脱颖而出呢?熟读这里的一百个java多线程面试问题即可。1.什么是线程?什么是进程?回答:线程是操作系统能够进行调度的最小执行单位,它包含在进程中,共享进程的资源。进程是一个正在执行中的程序,它包含了代码、数据和系统资源。一个进程......
  • 笔记:Qt开发之多线程同步互斥机制
    目标:了解Qt多线程开发中常用的同步互斥类,使用场景和特点 实现线程互斥和同步常用的类互斥锁:QMute、QMutexLocker条件变量:QWaitCondition信号量:QSemaphore读写锁:QReadLocker、QWriteLocker、QReadWriteLock 1,QMutex特点:QMutex是Qt框架提供的互斥锁类,用于保护共享资......
  • CAS自旋锁到底是什么?为什么能实现线程安全?
    ......
  • java并发线程
    在java中守护线程和本地线程区别?java中的线程分为两种:守护线程(Daemon)和用户线程(User)。任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDaemon(boolon);true则把该线程设置为守护线程,反之则为用户线程。Thread.setDaemon()必须在Thread.start()之前调用,否则运行......
  • 进程和线程的认识
     首先,在我们了解多线程之前,我们需要了解进程的概念以及进程和线程是什么关系?为什么我们Java中更多是需要利用多线程去解决一些问题,而不是多进程来解决?今天就让我们来解释一下。它们之间的关系。 什么是进程?进程是操作系统对于正在运行的应用的一种抽象,也就是说,进程可以看作是程......