Task 生成排队人数任务线程

Task 生成排队人数任务线程Task 生成排队人数任务线程

大家好,又见面了,我是你们的朋友全栈君。

package main.com.lift;

import com.google.common.collect.Lists;

import java.util.List;
import java.util.Queue;
import java.util.concurrent.Callable;
import java.util.concurrent.CyclicBarrier;
import java.util.concurrent.LinkedBlockingQueue;

public class Task implements Callable<Queue<Integer>> {
    List<Integer> loucengList;
    CyclicBarrier cyclicBarrier;
    LinkedBlockingQueue<Integer> queue;
    public Task(CyclicBarrier cyclicBarrier,List<Integer> loucengList,LinkedBlockingQueue<Integer> queue){
        this.cyclicBarrier=cyclicBarrier;
        this.loucengList=loucengList;
        this.queue=queue;
    }
    @Override
    public Queue<Integer> call() throws Exception {
        Queue<Integer> childQueue= Lists.newLinkedList();
        try{
            cyclicBarrier.await();
            do{
                synchronized (queue){
                    if(queue.size()>0){
                        int a=queue.poll();
                        if(loucengList.toString().contains(a+"")){
                            childQueue.offer(a);
                        }else {
                            queue.offer(a);
                        }
                    }
                }
                System.out.println(","+queue.size());
            }while (queue.size()>0);
        }catch (Exception e){
            e.printStackTrace();
        }
        return childQueue;
    }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/105943.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 怎么完全卸载赛门铁克_赛门铁克专用卸载工具[通俗易懂]

    怎么完全卸载赛门铁克_赛门铁克专用卸载工具[通俗易懂]安装卸载是两个操作,完全相反,通常安装会比卸载简单,赛门铁克专用卸载工具是一款专门用于卸载赛门铁克系列软件的应用工具,赛门铁克专用卸载工具完美解决赛门铁克怎么卸载的难题,需要的用户可以下载!赛门铁克官方卸载工具相关说明:包括SymantecAntiVirus即SAV系列,SymantecClientSecurity即SCS系列,以及SymantecEndpointProtection即S…

    2022年4月29日
    132
  • idea注释模版配置(吐血推荐!!!)[通俗易懂]

    idea注释模版配置(吐血推荐!!!)[通俗易懂]idea注释模版配置idea作为越来越多程序员使用的开发工具,平时的代码注释也非常的关键,下面介绍一下类上注释和方法上注释,方便大家的开发配置,同时也为自己以后配置留一份记录(毕竟每次换环境都需要重新配置一遍)1、新建类的时候自动添加类注释(1)按照上图的提示,找到位置1的FileandCodeTemplates(2)选择右侧的Files选项卡,选择位置2的Class(如果需要设置接口和枚举的注释模版,只需要选择Interface和Enum,按照步骤3配置一下就ok了)(3)在

    2022年9月30日
    1
  • 用html设计一个网站_html个人网页中文模板

    用html设计一个网站_html个人网页中文模板多的不说,直接上网页我个人自学的,样子不是恒好看,但是可以作为作业(老师也没怎么讲,毕竟是在大学里面嘛,大部分时间都是自学罢了)这是主页面index.html<htmllang=”en”><head><metacharset=”UTF-8″><metaname=”viewport”content=”width=device-width,initial-scale=1.0″><title>

    2022年10月13日
    0
  • 大数据篇:三大指标

    大数据篇:三大指标大数据篇:三大指标上一篇文章中文章讲了如何用服务等级协议(SLA)来评估我们的系统,并讲解了几个常用的SLA指标今天我们来讲分布式系统中另外几个基本概念可扩展性(Scalability)先从我们为什么需要分布式系统说起。原因是我们系统的数据量越来越大,从原来的GB到TB到现在的PB级,单机已经无法胜任这样的工作了。工作中也常有这样的场景,随着业务变得原来越复杂,之前设计的系统无法处理日渐…

    2022年5月10日
    47
  • 在vue中使用tinymce富文本编辑器+tinymce富文本编辑器插入图片

    在vue中使用tinymce富文本编辑器+tinymce富文本编辑器插入图片1.安装#npminstalltinymce-S2.把node_modules\tinymce里面的文件包括tinymce文件夹全部复制到static文件夹下面,如下图3.在mian.js中引入tinymce(也可以在组件中引入)importTinymcefrom’tinymce’Vue.prototype.$tinymce=Tinymce…

    2022年5月1日
    80
  • 警察面试真题及答案_接口测试面试题及答案

    警察面试真题及答案_接口测试面试题及答案一、前言接口测试最近几年被炒的火热了,越来越多的测试同行意识到接口测试的重要性。接口测试为什么会如此重要呢?主要是平常的功能点点点,大家水平都一样,是个人都能点,面试时候如果问你平常在公司怎么测试的,你除了说点点点,还能说什么呢,无非就是这个项目点完了点那个项目,这就是为什么各行各业的只要手指能点得动的人都来转行软件测试了。面试的时候面试官希望你除了点点点,还能更深入一点的思考页面上看不到…

    2022年9月29日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号