zoukankan      html  css  js  c++  java
  • python并发编程-线程池

    from concurrent.futures import ThreadPoolExecutor
    import time
    
    def func(n):
        time.sleep(2)
        print(n)
        return n*n
    t_pool = ThreadPoolExecutor(max_workers=20) #max_workers一般不超过CPU*5,创建线程池
    t_lst = []
    for i in range(20):
        t = t_pool.submit(func,i) #提交多线程认为
        t_lst.append(t)
    t_pool.shutdown() #可以完成close和join的操作
    print('主线程')
    for t in t_lst:print('****',t.result())
    

    线程池callback

    from concurrent.futures import ThreadPoolExecutor
    import time
    
    def func(n):
        time.sleep(2)
        print(n)
        return n*n
    
    def call_back(m):
        print('结果是%s'%m.result())
    t_pool = ThreadPoolExecutor(max_workers=20) #max_workers一般不超过CPU*5,创建线程池
    for i in range(20):
        t = t_pool.submit(func,i).add_done_callback(call_back)
    # t_pool.map(func,range(20)) #t_pool.map是没有返回值的
    
  • 相关阅读:
    C/C++ 库函数 是否调用 WinAPI
    获得图形的实际坐标值
    电影
    adobe flash player 下载地址
    加速软件
    电影_排行榜
    transform
    MyEclipse
    Android
    AAA
  • 原文地址:https://www.cnblogs.com/konglinqingfeng/p/9712698.html
Copyright © 2011-2022 走看看