Java资源分享网 - 专业的Java学习网站 学Java,上Java资源分享网
JAVA高质量并发详解,多线程并发深入讲解 PDF 下载
发布于:2024-05-05 10:19:44
(假如点击没反应,多刷新两次就OK!)

JAVA高质量并发详解,多线程并发深入讲解 PDF 下载 图1

 

 

资料内容:

 

第⼀章 java.util.concurrent简介
java.util.concurrent包提供了很多有⽤的类,⽅便我们进⾏并发程序的开发。本⽂将会做⼀个总体的简单介绍。
 
主要的组件
java.util.concurrent包含了很多内容, 本⽂将会挑选其中常⽤的⼀些类来进⾏⼤概的说明:
Executor
ExecutorService
ScheduledExecutorService
Future
CountDownLatch
CyclicBarrier
Semaphore
ThreadFactory
 
Executor
Executor是⼀个接⼝,它定义了⼀个execute⽅法,这个⽅法接收⼀个Runnable,并在其中调⽤Runnablerun
法。
我们看⼀个Executor的实现:

 

public class Invoker implements Executor {
 @Override
 public void execute(Runnable r) {
 r.run();
 }
}

 

现在我们可以直接调⽤该类中的⽅法:
 
 public void execute() {
 Executor executor = new Invoker();
 executor.execute( () -> {
 log.info("{}", Thread.currentThread().toString());
 });
 }

 

注意,Executor并不⼀定要求执⾏的任务是异步的。
 
ExecutorService
如果我们真正的需要使⽤多线程的话,那么就需要⽤到ExecutorService了。
ExecutorService管理了⼀个内存的队列,并定时提交可⽤的线程。
我们⾸先定义⼀个Runnable类:
 
public class Task implements Runnable {
 @Override
 public void run() {
 // task details
 }
}