博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LinkedBlockingDeque
阅读量:6933 次
发布时间:2019-06-27

本文共 2123 字,大约阅读时间需要 7 分钟。

1.LinkedBlockingDeque

public class LinkedBlockingDeque
extends AbstractQueue
implements BlockingDeque
, Serializable

2.主要方法

  • takeFirst()和takeLast():分别返回类表中第一个和最后一个元素,返回的元素会从类表中移除。如果列表为空,调用的方法的线程将会被阻塞直达列表中有可用元素。
  • getFirst()和getLast():分别返回类表中第一个和最后一个元素,返回的元素不会从列表中移除。如果列表为空,则抛出NoSuckElementException异常。
  • peek()、peekFirst()和peekLast():分别返回列表中第一个元素和最后一个元素,返回元素不会被移除。如果列表为空返回null.
  • poll()、pollFirst()和pollLast():分别返回类表中第一个和最后一个元素,返回的元素会从列表中移除。如果列表为空,返回Null。
public class Client implements Runnable {    private LinkedBlockingDeque
requestList; public Client(LinkedBlockingDeque
requestList) { super(); this.requestList = requestList; } @Override public void run() { for (int i = 0; i < 3; i++) { for (int j = 0; j < 5; j++) { StringBuilder request = new StringBuilder(); request.append(i); request.append(":"); request.append(j); try { requestList.put(request.toString()); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("Clint: " + request + " " + new Date()); } try { TimeUnit.SECONDS.sleep(2); } catch (InterruptedException e) { e.printStackTrace(); } } System.out.println("Client: End"); }}
public class LinkedBlockingDequeMain {    public static void main(String[] args) throws Exception {        LinkedBlockingDeque
list=new LinkedBlockingDeque
(3); Client client=new Client(list); Thread thread=new Thread(client); thread.start(); for (int i = 0; i <5; i++) { for (int j =0; j <3; j++) { String request=list.take(); System.out.println("Main:Request:"+request+" at "+new Date()+" Size "+list.size()); } TimeUnit.MILLISECONDS.sleep(300); } System.out.println("Main:End"); }}

转载地址:http://bcmjl.baihongyu.com/

你可能感兴趣的文章
【转载】两个递增数列排序后求第n个数
查看>>
微软SqlHelper详细解读
查看>>
mysql数据库常用语句系列
查看>>
ie9下对象for..in..的bug
查看>>
锚点跳转的过渡效果
查看>>
封装一个地图中间件,愉快的切换百度地图和谷歌地图...
查看>>
常用js效果:选项卡切换
查看>>
改变input tpye 属性radio css 样式!!!
查看>>
win10 应用商店打不开解决
查看>>
ubuntu使用记录
查看>>
error: macro names must be identifiers
查看>>
Python之禅
查看>>
go 通过nginx代理后获取用户ip
查看>>
我的vim编辑器截图
查看>>
利用canvas生成海报
查看>>
Linux系统常见内核问题修复(转发)
查看>>
Vim 3 vimrc
查看>>
create-react-app环境搭建
查看>>
【BZOJ】1875: [SDOI2009]HH去散步 矩阵快速幂
查看>>
iOS 工程师
查看>>