Executors创建固定线程demo
来源:互联网 发布:韩国制衣软件 编辑:程序博客网 时间:2024/04/30 17:50
来了解一下多线程的使用,多线程执行任务,再也不用for来解决。大大提升性能。
package com.a;import java.util.ArrayList;import java.util.List;import java.util.concurrent.Callable;import java.util.concurrent.CountDownLatch;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Future;public class ExecutorServiceTest {static int count = 10;static CountDownLatch latch = null;public static void main(String[] args) throws Throwable {ExecutorServiceTest a = new ExecutorServiceTest();List<Student> list = a.TestThread();System.out.println("最后返回对象个数=="+list.size());}//多线程执行任务public List<Student> TestThread() {List<Student> list = new ArrayList<>();Student student = null;ExecutorService executorService = null;try {latch = new CountDownLatch(count);executorService = Executors.newFixedThreadPool(count);// 10个线程for (int i = 0; i < count; i++) {Future<Student> future = executorService.submit(new Callable<Student>() {public Student call() throws Exception {Student stu = createObject();return stu;}});// 添加if (future != null && future.get()!= null) {student = future.get();list.add(student);}else {throw new NullPointerException();}latch.countDown();}latch.await();} catch (Exception e) {e.printStackTrace();}executorService.shutdown();return list;}public Student createObject() {Student stu = new Student();for (int i = 0; i < 1; i++) {System.out.println("开始创建对象");stu = new Student();}return stu;}}
0 0
- Executors创建固定线程demo
- Executors创建多线程demo
- java 通过Executors.newFixedThreadPool创建固定大小的线程执行器
- 固定线程数demo
- Java:使用Executors创建和管理线程
- 使用Executors创建和管理线程
- Java:使用Executors创建和管理线程
- Executors 工具类 创建 的 线程池
- Java:使用Executors创建和管理线程
- Java:使用Executors创建和管理线程
- Java:使用Executors创建和管理线程
- Java:使用Executors创建和管理线程
- Java:使用Executors创建和管理线程
- 类 Executors创建线程池用法
- 使用Executors创建和管理线程
- Java:使用Executors创建和管理线程
- 使用Executors创建和管理线程
- Java 使用Executors创建线程池
- CentOS7安装配置mysql5.7
- 更新UI操作需要在主线程完成
- 基于Java Socket的自定义协议
- 进程与线程的区别与联系
- 八种排序算法
- Executors创建固定线程demo
- tomcat源码浅析(二)之server.xml的解析
- 使用镜像服务站下载CentOS安装包
- 文件加密
- 深入PHP面向对象、模式与实践——生成对象(2)
- Android 开发笔记——通过 Intent 传递类对象
- 数据采集(旅游蚂蜂窝)
- 使用kubeadm在ububtu16.04安装kubernetes1.5.5-flannel
- swarm kubernetes mesos对比