要实现并行调用多个接口,可以使用Java的多线程技术。可以创建多个线程,分别调用不同的接口,并行地执行。
下面是一个简单的示例代码:
import java.util.concurrent.*; public class ParallelInterfaceInvocation { public static void main(String[] args) { ExecutorService executor = Executors.newFixedThreadPool(2); // 创建多个Callable任务,每个任务分别调用一个接口 Callabletask1 = new Callable () { @Override public String call() throws Exception { // 调用接口1的逻辑 return "Result from Interface 1"; } }; Callable task2 = new Callable () { @Override public String call() throws Exception { // 调用接口2的逻辑 return "Result from Interface 2"; } }; // 提交任务给线程池 Future future1 = executor.submit(task1); Future future2 = executor.submit(task2); try { // 获取接口调用结果 String result1 = future1.get(); String result2 = future2.get(); // 处理接口调用结果 System.out.println("Result from Interface 1: " + result1); System.out.println("Result from Interface 2: " + result2); // 关闭线程池 executor.shutdown(); } catch (InterruptedException | ExecutionException e) { e.printStackTrace(); } } }
在上面的代码中,我们创建了一个固定大小为2的线程池,然后创建了两个Callable任务,分别代表调用两个不同接口的逻辑。接着,我们将这两个任务提交给线程池,得到两个Future对象,分别表示每个任务的执行结果。通过调用Future对象的get()方法,可以获取每个任务的返回结果,然后进行相应的处理。
这样,我们就实现了并行调用多个接口的功能。注意,如果接口的调用是阻塞的,可以使用Future对象的get()方法来等待接口调用的完成。如果接口的调用是非阻塞的,可以使用Future对象的isDone()方法来判断接口调用是否完成。