ConcurrentLinkedQueue
ConcurrentLinkedQueue
因为ConcurrentLinkedQueue是线程序安全的并且是针对并发的
主类
- public class conn{
- public static void main(String[] args) throws Exception{
- Queue<String> queue=new ConcurrentLinkedQueue<String>();
- for(int i=0;i<1000000;i++){
- queue.add(String.valueOf(i));
- }
- int num=10;//线程人个数
- for(int i=0;i<num;i++){
- new ThreadConn(queue);
- }
- }
- }
线程类
- public class ThreadConn implements Runnable{
- Queue<String> queue;
- public ThreadConn(Queue<String> queue){
- this.queue=queue;
- Thread thread=new Thread(this);
- thread.start();
- }
- public void run(){
- try{
- long sd=new Date().getTime();
- while(queue.poll()!=null){
- //这里是业务逻辑
- }
- System.out.println (sn-sd);
- }catch(Exception e){
- e.printStackTrace();
- }
- }
- }
ConcurrentLinkedQueue相关推荐
- 【多线程】ConcurrentLinkedQueue 的实现原理
1. 引言 在并发编程中我们有时候需要使用线程安全的队列.如果我们要实现一个线程安全的队列有两种实现方式:一种是使用阻塞算法,另一种是使用非阻塞算法.使用阻塞算法的队列可以用一个锁(入队和出队用同一把 ...
- 死磕Java并发:J.U.C之Java并发容器:ConcurrentLinkedQueue
作者:chenssy 来源:Java技术驿站 要实现一个线程安全的队列有两种方式:阻塞和非阻塞.阻塞队列无非就是锁的应用,而非阻塞则是CAS算法的应用.下面我们就开始一个非阻塞算法的研究:Coucur ...
- 【Java并发编程】—–“J.U.C”:ConcurrentLinkedQueue
2019独角兽企业重金招聘Python工程师标准>>> 前言 在之前的文章中,已经对ArrayBlockingQueue.LinkedBlockingQueue这两个比较常用的阻塞队 ...
- 并发队列-无界非阻塞队列 ConcurrentLinkedQueue 原理探究
并发队列-无界非阻塞队列 ConcurrentLinkedQueue 原理探究 http://www.importnew.com/25668.html 一. 前言 常用的并发队列有阻塞队列和非阻塞队列 ...
- 关于java同步包中ConcurrentLinkedQueue类的深入分析与理解
一,官方描写叙述 一个基于连接节点的无界线程安全队列.这个队列的顺序是先进先出.队列头部的元素是留在队列中时间最长的,队列尾部的元素是留在队列中时间最短的.新元素被插入到元素的尾部,队列从队列的头部检 ...
- ConcurrentLInkedQueue队列
ConcurrentLInkedQueue 适用于高并发场景下的队列 基于连接节点的,无界线程安全队列 通过无锁的方式 实现了高并发状态下的高性能 先进先出 队列元素,遵循先进先出的原则 头是最先加入 ...
- java多线程 --ConcurrentLinkedQueue 非阻塞 线程安全队列
ConcurrentLinkedQueue是一个基于链接节点的无界线程安全队列,它采用先进先出的规则对节点进行排序,当我们添加一个元素的时候,它会添加到队列的尾部:当我们获取一个元素时,它会返回队列头 ...
- ConcurrentLinkedQueue非阻塞队列实现原理分析
2019独角兽企业重金招聘Python工程师标准>>> 引言 在并发编程中我们有时候需要使用线程安全的队列.如果我们要实现一个线程安全的队列有两种实现方式一种是使用阻塞算法,另一种是 ...
- 并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法
转载自https://blog.csdn.net/westos_linux/article/details/78968012 在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就 ...
- JUC队列-ConcurrentLinkedQueue(四)
ConcurrentLinkedQueue介绍 ConcurrentLinkedQueue是线程安全的队列,它适用于"高并发"的场景. 它是一个基于链接节点的无界线程安全队列,按照 ...
最新文章
- 工作笔记---js时间插件的使用
- gc方法写法_清标的内容、技巧及书写方式
- CentOS6.9安装Kafka
- RAC中如何更改对外网卡和内部互联网卡的配置、IP及VIP
- python自动化框架pytest pdf_Python自动化测试框架-pytest,python
- 配置远程登陆交换机方法
- 9. Linux 磁盘与文件管理系统(inode 目录)
- MAC Home-brew 和 Home-brew Cask
- 633.平方数之和(力扣leetcode) 博主可答疑该问题
- TTL和CMOS区别RS232
- The Django Book
- 相关性分析和假设检验
- python用opencv实现图片的美白磨皮_12 - OpenCV+TensorFlow 入门人工智能图像处理-磨皮美白-多智时代...
- ant design vue日期组件怎么清空(a-range-picker,a-date-picker)
- ESP8266本质是一个带wifi功能的单片机
- Angular /Angular cli安装教程
- BLAM跑自己的数据包无法显示全局点云地图解决(速腾聚创RS-LiDAR-16 雷达 )-SLAM不学无术小问题
- 江西自考 计算机及应用,江西自考专科本科计算机抵免政策解读
- 从一个Uiautomator的官方demo说源码
- 软件工程课程实验报告:实验三
热门文章
- 视频光端机常见故障问题及处理方法大全
- [渝粤教育] 中国地质大学 电力系统保护原理 复习题 (2)
- 【渝粤题库】广东开放大学 商务交际听说 形成性考核
- android studio简易记账本,Android记账本
- 单径Rayleigh信道下基带模型的多用户BPSK直接序列扩频系统MATLAB仿真(m序列、Gold序列和正交Gold序列)
- Win32编程之基于MATLAB与VC交互的多项式回归
- java中true转换为int_在Java中将字节转换为int的最优雅的方式
- dense rank改为mysql_mysql上排名sql的写法,类似oracle的rank和dense
- php怎么检查输入名称,PHP |通过$_POST []获取输入名称
- C++一天一个程序(七)