Java8 快速建立线程并执行

在Java8中,可以使用lambda表达式来快速地建立线程并执行。

例如,以下代码可以新建一个线程并在其中执行一个简单的任务:

new Thread(() -> {
    // 简单的任务代码
}).start();

使用lambda表达式比传统的线程创建方式更加简洁和易读。

是的,除了lambda表达式,Java8还提供了另一种快速建立线程并执行的方式,即使用CompletableFuture类。使用CompletableFuture可以更加方便地进行异步编程,使用起来也比较简单。

以下是使用CompletableFuture类进行线程创建和执行的示例代码:

CompletableFuture<Void> future1 = CompletableFuture.runAsync(() -> {
    // 任务1代码
});

CompletableFuture<Void> future2 = CompletableFuture.runAsync(() -> {
    // 任务2代码
});

CompletableFuture.allOf(future1, future2).join();

这段代码会创建两个线程,分别执行任务1和任务2,并等待这两个线程执行完成后再继续执行后面的代码。也可以使用anyOf方法,让多个任务中的任意一个完成即可。

除了runAsync方法,CompletableFuture还提供了其他方法,例如supplyAsyncthenApply,可以用于更加复杂的异步编程。