zoukankan      html  css  js  c++  java
  • 队列----------------多线程利器

    先进先出模式

    import queue #线程队列
    
    q = queue.Queue()   #先进先出,先存进的数据,就先被取出来。如果()内有数字,如5,意思是q内可以放的数据数量
    
    q.put(12)
    q.put('hello')
    q.put({'name':'doudou'})
    q.put(34,False) #意思是,如果队列已经满了。put不进去,会返回
    
    print(q.qsize()) #队列里面具体的值
    print(q.empty()) #是否为空
    print(q.full())  #是否为满的状态
    
    while 1:
        data = q.get(block = False) #当队列被取完后,如果还继续取的话,会返回
        print(data)
        print('---------')

    先进后出模式

    import queue
    q = queue.LifoQueue()
    
    q.put(12)
    q.put('hello')
    q.put({'name':'doudou'})
    
    while 1:
        data = q.get(block=False)  # 当队列被取完后,如果还继续取的话,会返回
        print(data)
        print('---------')

    优先级模式

    import queue
    
    q = queue.PriorityQueue()
    
    q.put([3,12])  #列表里面第一个数字越小,优先级越高
    q.put([2,'hello'])
    q.put([4,{'name':'doudu'}])
    
    while 1:
        data = q.get()  # 当队列被取完后,如果还继续取的话,会返回
        print(data)
        print('---------')
  • 相关阅读:
    servlet多线程同步问题
    servlet之request
    servlet方法
    非静态内部类不能有静态成员
    接口与抽象类的区别
    枚举
    Install CUDA 6.0 on Ubuntu 14.04 LTS
    Introduction to Deep Learning Algorithms
    codeblocks 使用汇总
    矩阵奇异值分解(SVD)及其应用
  • 原文地址:https://www.cnblogs.com/lhqlhq/p/8992050.html
Copyright © 2011-2022 走看看