You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jetty9升级至Jetty12:用AsyncContext替代Continuation等价代码问询

Jetty 9 升级到 Jetty 12:用 AsyncContext 替代 Continuation

等价代码替换

原来基于 Continuation 的代码可直接替换为标准 Servlet 异步 API 实现:

// 获取AsyncContext,调用此方法后请求自动进入挂起状态
AsyncContext asyncContext = request.startAsync();
// 设置异步超时时间,对应原代码的setTimeout
asyncContext.setTimeout(suspendMs);

关于 AsyncContext 的「挂起」功能

Servlet 标准的 AsyncContext 没有单独的 suspend() 方法。当调用 HttpServletRequest.startAsync() 时,请求会立即切换到异步模式,这就对应了原 Continuation.suspend() 的挂起效果——请求不会立即返回响应,会保持挂起状态直到你调用 asyncContext.complete()(完成异步处理)或 asyncContext.dispatch()(将请求分发到其他 Servlet/资源继续处理)。

若需要保留原请求和响应对象的引用,可使用重载方法 request.startAsync(request, response),确保后续操作能正确访问原始请求响应。

内容的提问来源于stack exchange,提问作者F Goli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 10:53:11