java

导航

java8线程池如何使用?

来源 :中华考试网 2020-10-26

  线程池的特点是提供一个线程队列,队列中保存着所有等待状态的线程。避免了创建与销毁额外开销,提高了响应速度。那么在操作代码的时候我们又该如何使用线程池呢?一起来看看吧。

  线程池的所有类在java.util.concurrent.Executor:负责线程的使用与调度的根接口

  创建固定大小线程池

  ExecutorService executorService = Executors.newFixedThreadPool(5);

  为线程池的线程分配任务

  executorService.submit(new Thread(new Runnable() {

  @Override

  public void run() {

  System.out.println("------------");

  }

  }));

  关闭线程池

  executorService.shutdown();

  线程池执行Callable线程

  Future future = executorService.submit(new Callable() {

  public Integer call() throws Exception {

  int sum = 0;

  for (int i = 0; i < 100; i++) {

  sum += i;

  }

  return sum;

  }

  });

  得到程序的返回结果

  Integer sum = future.get();

  在线程池中提交十个线程执行程序。

  List> list = new ArrayList<>();

  for (int i = 0; i < 10; i++) {

  Future future = executorService.submit(new Callable() {

  public Integer call() throws Exception {

  int sum = 0;

  for (int i = 0; i < 100; i++) {

  sum += i;

  }

  return sum;

  }

  });

  list.add(future);

  }

  填写下面表单即可预约申请免费试听java课程!害怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

分享到

相关资讯