我試圖通過簡單的示例更好地理解番石榴 API:首先我實例化返回“hello”的 ListenableFuture 然后我使用 Futures.transform() 將我的“hello”轉(zhuǎn)換為“HELLO”但我沒有得到任何結(jié)果。這是我的代碼(我刪除了 ListenableFuture 實現(xiàn)中的其他方法以使事情變得更容易):public static void main(String[] args) throws InterruptedException, ExecutionException { ListenableFuture<String> future = getString(); ListenableFuture<String> future2 = Futures.transform(future, new Function<String,String>() { @Override public String apply(String input) { return input.toUpperCase(); } }); System.out.println(future.get()); //print "hello" System.out.println(future2.get()); //blocking, never ends...no result } private static ListenableFuture<String> getString() { return new ListenableFuture<String>() { @Override public String get() throws InterruptedException, ExecutionException { return "hello"; } }; }
Java:帶有 ListenableFuture 的番石榴期貨 API
30秒到達戰(zhàn)場
2023-06-14 14:25:22