zoukankan      html  css  js  c++  java
  • 获取线程的执行结果

    code
    import threading
    from queue import Queue
    import time
     
    def timeit(f):
        def wrapper(*args, **kwargs):
            start_time = time.time()
            res = f(*args, **kwargs)
            end_time = time.time()
            print("%s函数运行时间:%.8f" % (f.__name__, end_time - start_time))
            return res
        return wrapper
     
    def job(li, queue):
        queue.put(sum(li))
     
    @timeit
    def use_thread():
        q = Queue()
        lis = [range(5), range(2,10), range(1000, 20000), range(3000, 10000)]
        threads = []
        for li in lis:
            t = threading.Thread(target=job, args=(li, q))
            t.start()
            threads.append(t)
        [thread.join() for thread in threads]
        results  = [q.get() for li in lis]
        print(results)
     
    if __name__ == "__main__":
        use_thread()
    outputs
    macname@MacdeMacBook-Pro py % python3 cccccc.py
    [10, 44, 199490500, 45496500]
    use_thread函数运行时间:0.00095630
    macname@MacdeMacBook-Pro py %
     
     
     
     
     
     
     
     
     
     
     
     

  • 相关阅读:
    Cmder配置
    uboot移植
    嵌入式产品开发技术问题
    flexbox布局
    使用PS过程
    STM32 使用 FreeRTOS过程记录
    TTL、RS232、RS485、串口
    用纯css改变下拉列表select框的默认样式
    task9暂存
    Hello World
  • 原文地址:https://www.cnblogs.com/sea-stream/p/14192614.html
Copyright © 2011-2022 走看看