public static void main(String[] args) {long start = System.currentTimeMillis();List<Integer> list = new ArrayList();for (int i = 0; i < 1000; i++) {list.add(i);}//定义线程数量为20,可根据服务器配置适当调整大小        Thread(list, 20);long end = System.currentTimeMillis();System.out.println("总时间 = " + (end - start));}
//此处有加锁,不需要的同学可以自行改造
public synchronized static <T> void Thread(List<T> list, int nThread) {if (CollectionUtils.isEmpty(list) || nThread <= 0 || CollectionUtils.isEmpty(list)) {return;}Semaphore semaphore = new Semaphore(nThread);//定义几个许可ExecutorService executorService = Executors.newFixedThreadPool(nThread);//创建一个固定的线程池for (T number : list) {try {semaphore.acquire();executorService.execute(() -> {//此处可以放入待处理的业务System.out.println("number:" + number);semaphore.release();});} catch (InterruptedException e) {}}executorService.shutdown();}

在数据量大的情况下对比直接循环效果很明显。用上之后又可以加鸡腿了~

JAVA多线程处理for循环相关推荐

  1. Java语言的循环控制结构

    Java语言的循环控制结构 循环控制结构:是在一定条件下,反复执行某段程序的流程结构,被反复执行的程序称为循环体.循环控制结构是程序中非常重要和基本的一种结构,它是由循环语句来实现的. Java 的循 ...

  2. java中的循环 while

    java中的循环 有三种 for循环 while循环 do..while循环 今天我们主要就讲一种. 叫while循环. 剩下的两种, 我们会在<基础进阶>里继续给大家介绍. while循 ...

  3. java跳出指定循环

    java跳出指定循环: 方法一: 在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break 语句,即可跳出外层循环: for(int i = 0;i < 10; i ++ ...

  4. java js跳出循环_[Java教程]js循环的总结

    [Java教程]js循环的总结 0 2016-10-07 15:00:14 js原生的循环有两种,一般的for循环和for...in循环.还有一种常用jQuery.each()循环. 一. js原生循 ...

  5. java 中for循环中重复定义的变量 为什么不报错?

    java 中for循环中重复定义的变量 为什么不报错? public class Test1 {public static void main(String[] args) {int[] arr = ...

  6. java用while循环语句输出1-100内的奇数和

    java用while循环语句输出1-100内的奇数和 /*** 用while语句,输出0-100所有奇数和*/ public class Test04 {public static void main ...

  7. JAVA中for循环写杨辉三角_java使用for循环输出杨辉三角

    思路是创建一个整型二维数组,包含10个一维数组.使用双层循环,在外层循环中初始化每一个第二层数组的大小.在内层循环中,先将两侧的数组元素赋值为1,其他数值通过公式计算,然后输出数组元素.public ...

  8. java for in 循环_js的for in循环和java里foreach循环的区别分析

    本文实例分析了js的for in循环和java里foreach循环的区别.分享给大家供大家参考.具体分析如下: js里的for in循环定义如下: for(var variable in obj) { ...

  9. 用java解决约瑟夫循环问题,Java实现循环列表解决约瑟夫环问题

    约瑟夫环:共有n个人围成一圈,从1开始报数,数到m的人出圈,求最后幸运者序号?? 下面用Java实现循环列表解决这个问题: package com.iteye.ljmdbc7a; import jav ...

最新文章

  1. Crawler:关于爬虫的简介、安装、使用方法之详细攻略
  2. vue项目中 axios请求拦截器与取消pending请求功能 - 年少、 - 博客园
  3. 图论 —— 生成树 —— 生成树计数 —— 基尔霍夫矩阵
  4. 鸿蒙轻内核源码分析:掌握信号量使用差异
  5. Javascript 中的非空判断 undefined,null, NaN的区别
  6. 决定创业失败的除了团队外
  7. HDU1517 A Multiplication Game (博弈论+思维)
  8. MySQL安装 MySQL5.7.10免安装版配置,mysql5.7.10免安装版
  9. 7款很棒的 HTML5 视频播放器
  10. 【Python】Python网络爬虫-电视剧《平凡的荣耀》数据爬取与分析
  11. 关于BigDecimal常量的使用ROUND_UP,ROUND_DOWN,ROUND_HALF_UP,ROUND_HALF_DOWN
  12. 浅谈电子学--台湾新竹交通大学 陈英龙
  13. 浅谈当下火热的ChatGPT
  14. ggplot2 | R语言绘制世界地图choropleth
  15. AM335xu-bootLOGO开机LOGO
  16. 菜鸟自学02:下载参考基因组及构建bowtie2索引
  17. 浅谈JAVA的往日辉煌与未来趋势
  18. 车辆仪表盘测试平台研究
  19. 正式学习java五天
  20. Lidar based off-road negative obstacle detection and analysis(论文翻译)

热门文章

  1. Linux下查看进程占用带宽、CPU计算压力
  2. 高德地图python爬虫 商家_Python爬虫练习:爬取高德地图地铁线路及站点数据
  3. 【2019.9.4】Za
  4. Java异常---巩固强化
  5. 在职场中,千万不要当这两种下属,学会汇报,让领导刮目相看!
  6. 智慧公安警务系统开发,智慧公安行业解决方案
  7. openGL教程 纹理映射
  8. itext 填充PDF表单
  9. Python入门简单常见代码
  10. 考计算机软考还需要评定职称吗,软考评职称还需要年限吗