下面是一个使用 Java 8 并行流(parallel stream)的简单示例,它能够在两个线程中同时执行不同的方法:
import java.util.Arrays;
import java.util.List;
public class ConcurrentMethodExecution {
public static void main(String[] args) {
List<String> results = Arrays.asList(
method1(),
method2()
);
results.parallelStream().forEach(result -> {
// 在这里处理结果
System.out.println("Result: " + result);
});
}
// 第一个方法
private static String method1() {
// 模拟长时间运行的方法
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
return "Result from method1";
}
// 第二个方法
private static String method2() {
// 模拟长时间运行的方法
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
return "Result from method2";
}
}
在这个例子中,method1
和 method2
分别模拟两个不同的方法。parallelStream()
方法将列表转换为并行流,使得 forEach
中的操作可以并行执行。每个方法的结果都会被并行处理,最终输出