假设我使用 Java 8 的 Completeable 在 Spring MVC 中创建了一个异步 REST API。
这在客户端是怎么调用的?如果它是非阻塞的,端点在处理之前会返回一些东西吗?即
@RequestMapping("/") //GET method
public CompletableFuture<String> meth(){
thread.sleep(10000);
String result = "lol";
return CompletableFuture.completedFuture(result);
}
这究竟是如何运作的? (上面这段代码只是我随便编的一段代码)。
当我从 google chrome @ localhost:3000/
发送 GET 请求时会发生什么?我是异步 API 的新手,需要一些帮助。
最佳答案
不,客户端不知道它是异步的。它必须正常等待结果。只有服务器端受益于释放工作线程来处理其他请求。
关于java - 异步 API 设计客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45739538/