1. 程式人生 > >異步方法調用【其他模式】

異步方法調用【其他模式】

java 其他 方法 string equals rmi class a 結果 線程

public class AsyncMethodInvocation {
    /**
     * Async Method Invocation【異步方法調用】
     */
    @Test
    public void all() throws InterruptedException, ExecutionException {
        final String result = "async method invocation";
        // 1)可執行的異步任務呢
        final Callable<String> callable = ()->{
            // 2)異步任務的結果
            return result;
        };
        // 3)執行異步任務的線程池
        final ExecutorService executorService = Executors.newFixedThreadPool(1);
        final Future<String> future = executorService.submit(callable);
        // 4)可在將來讀取異步任務的計算結果
        assertEquals(result, future.get());
        executorService.awaitTermination(2, TimeUnit.SECONDS);
    }
}

異步方法調用【其他模式】