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;
    }
}

 

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 查找-散列查找

    查找-散列查找1.散列的相关概念散列技术是在记录的存储位置和它的关键字之间建立一个确定的对应关系f,使得每个关键字key对应一个存储位置f(key)。查找时,根据这个确定的对应关系找到给定值key的映射f(key),若查找集合中存在这个记录,则必定在f(key)的位置上。这里我们把这种对应关系f称为散列函数,又称为哈希(Hash)函数。按这个思想,采用散列技术将记录存储在一块连续的存储空间中,这块连续存储空间称为

  • 2019年日历假期添加

    2019年日历假期添加

    2021年11月27日
  • 允许Traceroute探测「建议收藏」

    允许Traceroute探测「建议收藏」漏洞描述使用Traceroute探测来获取扫描器与远程主机之间的路由信息。攻击者也可以利用这些信息来了解目标网络的网络拓扑。解决方法在防火墙中禁用TimeExceeded类型的ICMP包

  • git使用cherry-pick和merge合并文件和分支

    git使用cherry-pick和merge合并文件和分支

  • mysql截取字符串并且替换更新「建议收藏」

    mysql截取字符串并且替换更新「建议收藏」最近需要刷一个数据库表中的数据。表中的username字段中的名称是由下划线分割的两个字符串,现在需要去掉下划线后边的字符串,留下需要的姓名:updateusersetuser_name=SUBSTRING_INDEX(user_name,’_’,1)直接解决问题。用到mysql函数:SUBSTRING_INDEX(str,delim,count)…

  • python怎么使用代理ip池(如何利用爬虫ip代理池赚钱)

    初次学习python爬虫的朋友在频繁访问被爬取页面网站时都会被拦截,也就是限制ip。这里教教大家建立代理ip池。#!/usr/bin/envpython3#-*-coding:utf-8-*-importrequests,threading,datetimefrombs4importBeautifulSoupimportrandom”””1、抓取西刺代理网站…

发表回复

您的电子邮箱地址不会被公开。

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