`
小巫婆
  • 浏览: 23277 次
文章分类
社区版块
存档分类
最新评论

AsyncListener 接口

 
阅读更多

Servlet 3.0 为异步处理提供了一个监听器,使用 AsyncListener 接口表示。它可以监控如下四种事件:

  1. 异步线程开始时,调用 AsyncListener 的 onStartAsync(AsyncEvent event) 方法;
  2. 异步线程出错时,调用 AsyncListener 的 onError(AsyncEvent event) 方法;
  3. 异步线程执行超时,则调用 AsyncListener 的 onTimeout(AsyncEvent event) 方法;
  4. 异步执行完毕时,调用 AsyncListener 的 onComplete(AsyncEvent event) 方法;

要注册一个 AsyncListener,只需将准备好的 AsyncListener 对象传递给 AsyncContext 对象的 addListener() 方法即可,如下所示:

AsyncContext ctx = req.startAsync(); 
ctx.addListener(new AsyncListener() { 
    public void onComplete(AsyncEvent asyncEvent) throws IOException { 
        // 做一些清理工作或者其他
    } 
    ... 
}); 
分享到:
评论

相关推荐

    async-listener:asyncListener API的0.11版本的polyfill版本

    process.addAsyncListener polyfill 这是Trevor Norris流程的实现。{addAsyncListener,removeAsyncListener} ... 返回一个构造的AsyncListener对象。 然后可以将其传递给process.addAsyncListener()和process.removeA

    async-servlet-with-filter

    带过滤器的异步servlet 该项目演示了异步Servlet 3过滤器。 在Tomcat容器中或直接通过Jetty运行应用程序 > ./gradlew runJetty 并打开 描述 首先使用调度类型REQUEST调用过滤器 ...在AsyncListener上调用onStar

    javax.servlet-api-4.0.0-b03.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.1-b07.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.1-b08.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-4.0.1.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-4.0.0.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.1-b05.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.1-b03.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-4.0.0-b02.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-4.0.0-b01.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.1-b06.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-4.0.0-b07.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.1-b09.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.0.1.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.1-b04.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-4.0.0-b06.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-4.0.0-b04.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-4.0.0-b05.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

    javax.servlet-api-3.1-b02.jar中文文档.zip

    注:下文中的 *** 代表文件名中的版本号。 # 【javax.servlet-api-***.jar中文文档.zip】 中包含: 中文文档:【javax.servlet-api-***-javadoc-API文档-中文(简体)版.zip】...javax.servlet.AsyncListener ...... ```

Global site tag (gtag.js) - Google Analytics