java—为什么在考虑较低级别的实现时,阻塞get()太慢,而异步方法链接不起作用?

v1uwarro  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(196)

以下程序

ExecutorService service = Executors.newWorkStealingPool();
Future<Result> future = service.submit(firstTask);
Result result = future.get();
service.execute(() -> use(result));

可以执行并得到正确的结果,但性能可能会受到阻塞的严重影响 get() 这可以通过使用异步 CompletableFuture .
问:为什么要堵 get() 当考虑到较低级别的实现时,异步方法链接是否太慢?比如,是不是因为阻塞的实现 get() 或者 join() 等(可能通过 wait()Object )将强制线程处于阻塞或等待状态,那么异步方法呢?阻塞的根本原因到底是什么 get() 或者 join 慢的异步方法通常是快的?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题