zoukankan      html  css  js  c++  java
  • python3 队列的简单用法Queue

    队列的简单使用,队列先进先出

    import queue  # 不能用于多进程之间的通讯,可以用于多线程间的通讯
    from multiprocessing import Queue  # 可以用于进程之间的数据共享
    
    q = Queue(3)  # 创建一个队列对象,队列长度为3
    q.put(1)
    q.put(2)
    q.put(3)
    # q.put(4)  # 当队列已满,继续放值,,会阻塞程序
    try:
        q.put_nowait(4)  # 等同于 q.put(4, False)
    except:
        print("队列已经满了.")
    
    print(q.get())
    print(q.get())
    print(q.get())
    # print(q.get())  # 当队列空了,继续取值,也会阻塞程序
    try:
        q.get_nowait()  # 等同于q.get(block=False)
    except:
        print("队列已经空了.")

    执行结果:

    队列已经满了.
    1
    2
    3
    队列已经空了.

    队列的使用

    from multiprocessing import Queue
    
    
    q = Queue(5)
    q.put("one")
    q.put("two")
    q.put("three")
    q.put("four")
    q.put("five")
    # q.put("six")  # 队列的长度只有5,此时程序会阻塞在这里
    print(q.get())
    print(q.get())
    print(q.get())
    print(q.get())
    print(q.get())
    # print(q.get())  # 此时队列是空的,从空队列中拿数据也会阻塞

    执行结果:

    one
    two
    three
    four
    five
  • 相关阅读:
    SSL配置
    PHPStorm 打开时闪退的问题
    【网址链接】
    js中将string转换为number
    HTML特效代码大全
    前端面试题-重要
    元素框默认的计算方式
    html中有趣的显示出柠檬的方法
    html中圆角方法border-top-left-radius
    html+css显示出三角形方法transparent
  • 原文地址:https://www.cnblogs.com/lilyxiaoyy/p/10970863.html
Copyright © 2011-2022 走看看