zoukankan      html  css  js  c++  java
  • python 线程Queue 用法代码展示

    from queue import Queue
    
    q = Queue(maxsize=3)#限制队列3个
    
    #添加内容进去到队列
    q.put(10)
    q.put(20)
    q.put(30)
    
    
    print(q.qsize())#获取队列内容个数
    # q.put(40)#如果队列内容满了再添加将会柱塞,进程无法结束吗,直到内容有位置
    
    # q.put_nowait(50)#如果满了, 还添加就报一个Full的错误
    print(q.unfinished_tasks)#没有结束任务数量,
    # 这个变量, 每次添加都会增加1,但是每次get时候, 并不会减少1
    
    print(q.get())#获取到内容从头获取
    
    q.task_done()# (任务完成意思)才会让 unfinished_tasks 参数减少1
    
    print(q.get())
    q.task_done()
    print(q.unfinished_tasks)
    print(q.get())
    q.task_done()
    print(q.unfinished_tasks)
    
    
    # 默认情况下. 当队列为空了, 再调用get方法就阻塞当前线程, 知道能取出数据为止
    # print(q.get())
    
    # - url..
    
    # - 发送请求获取响应的
    # 当 unfinished_tasks == 0 时候, 判定任务都完成了
    q.join() # 让主线程登录, 直到队列中任务都完成了为止

    就是这么简单

  • 相关阅读:
    ios-app提交审核问题总结
    mui混合app请求过程处理(缓存、加载、刷新机制)
    vue引入assets和static静态资源问题
    mui入门教程
    scroll.js
    jQuery.Running.js
    CSS 编码技巧
    textillate.js
    3. 戏说VHDL之入门游戏一:流水灯
    2. 流水灯小计
  • 原文地址:https://www.cnblogs.com/12580s/p/9366421.html
Copyright © 2011-2022 走看看