在页面关闭时停止JSP处理

时间:2011-11-21 18:57:26

标签: java jsp browser

我有这个页面:

<%@page language="java"%>
<html>
     <head></head>
     <body>
         <% while(true) System.out.println("foo"); %>
    </body>
</html>

我希望在会话到期之前关闭浏览器时停止执行此页面。

我的想法是使用JavaScript来捕获onunload事件,使用AJAX将线程id回发到servlet /另一个JSP,并在一段时间后残酷杀死线程,即15秒。

这是对的吗?可能吗?还有更好的主意吗?

1 个答案:

答案 0 :(得分:0)

您可能需要在从客户端异步接收消息后停止写入的JSP页面,例如:

1)正如你所提到的那样,页面继续写作。

2)在每次写入之后,它可以检入消息队列或数据库,以指示它应该停止流数据。由于JSP正在运行到服务器,因此它与客户端没有任何连接,因此必须将此检查与浏览器分离。

然而,根据评论---尚不清楚这是否必要。