并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue

来源:互联网 发布:新日铁住金软件怎么样 编辑:程序博客网 时间:2024/06/05 00:46

    Queue中元素按FIFO原则进行排序.采用CAS操作,来保证元素的一致性。
LinkedBlockingQueue是一个线程安全的阻塞队列,它实现了BlockingQueue接口,BlockingQueue接口继承自java.util.Queue接口,并在这个接口的基础上增加了take和put方法,这两个方法正是队列操作的阻塞版本。 

阻塞队列LinkedBlockingQueue:

    1.由于LinkedBlockingQueue实现是线程安全的,实现了先进先出等特性,是作为生产者消费者的首选,LinkedBlockingQueue 可以指定容量,也可以不指定,不指定的话,默认最大是Integer.MAX_VALUE,其中主要用到put和take方法,put方法在队列满的时候会阻塞直到有队列成员被消费,take方法在队列空的时候会阻塞,直到有队列成员被放进来。

并发队列ConcurrentLinkedQueue:

    1.采用cas算法,所以能够高并发的处理


阅读全文
0 0
原创粉丝点击