微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – wait()on Servlet抛出异常

我在Jboss应用服务器上运行一个Web应用程序,我正在尝试从服务器实现事件库响应.

为了实现这一点,我在servlets类上使用了.wait()和.notify().基本上有一个Ajax请求,servlet阻塞等待,直到服务器上有一个事件,如果是,则在servlet上触发notify.

问题是当我在Servlet上等待(1000 * 60)时,我得到:

Servlet.service() for servlet ProcessesServlet threw exception: java.lang.IllegalMonitorStateException

甚至可以在HttpServlet类上执行wait()吗?

解决方法

在等待对象之前,您必须拥有所有权.

这通常是使用synchronized语句完成的.

synchronized (obj) {
        try {
            obj.wait(someTime);
        } catch (Throwable e) {
            e.printstacktrace();
        }
    }

原文地址:https://www.jb51.cc/java/122430.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐