Java 异步编程(上)

这个世界就是异步的,因此异步编程变得越来越重要。当然 Java 语言也对异步编程提供良好支持。特别是在 Java 8 中对异步编程进行很大改进。Java 8 可以算是 Java 中一个里程碑版本,添加许多让人惊叹的新的特性,以后会给大家一一道来。

现在微服务出现,巩固了 Java 立于 web 应用开发的老大的位置。

我们看一看在 Java 中是如何实现多任务的。我们有三个任务 T1、T2和T3。

Java 异步编程(上)_第1张图片

第一种方式就是同步执行,java 中大部分代码都是同步执行的,这样很好理解,处理也相对简单,就是耗时费力。

Java 异步编程(上)_第2张图片

然后我们可以通过为每个任务开一个线程来实现并行执行,缺点显然易见,多线程难于驾驭。也缺乏完整性,不可见。

Java 异步编程(上)_第3张图片
Java 异步编程(上)_第4张图片

比起多线程实现多任务执行,异步编程要简单的多。从图上看虽然很像,但实现机制却不同。相对于多线程来说异步要简单和可控。

Java 异步编程(上)_第5张图片
Java 异步编程(上)_第6张图片
Java 异步编程(上)_第7张图片

我们看一下异步编程在 Java 中发展过程。

Java 异步编程(上)_第8张图片

我们来简单地实现以下异步任务。来对解释上面的内容。

Java 异步编程(上)_第9张图片
Java 异步编程(上)_第10张图片

我们用到 jersey 这个 restful 框架,我们先用 runnable 来实现一个异步任务。

Java 异步编程(上)_第11张图片

在 java 8 中我们可以进行修改,使用 excute 来实现异步任务,代码如下图

Java 异步编程(上)_第12张图片

你可能感兴趣的:(Java 异步编程(上))