使用java安全吗。util。servlet中的计时器?
出于许多原因,在servlet中使用线程不是一个好的实践
java.util.Timer
看起来像是线程的包装器。那么,使用它也不安全吗?
如果是这样,在servlet中安排任务最安全的方法是什么
你可以在下面搜索框中键入要查询的问题!
出于许多原因,在servlet中使用线程不是一个好的实践
java.util.Timer
看起来像是线程的包装器。那么,使用它也不安全吗?
如果是这样,在servlet中安排任务最安全的方法是什么
# 1 楼答案
对。非常安全。servlet容器将负责HTTP请求的线程,但是您可以自己生成传统线程,不管它们的生命周期是限制在请求的生命周期内,还是更长
例如,常见的模式是生成一个长时间运行的处理线程。Servlet请求将工作项放在队列中(用于带外处理),长时间运行的处理线程将处理这些工作项
Here's an article from OReilly详细说明servlet和EJB中的计时器使用情况
# 2 楼答案
是的,你可以用定时器
一个重要的要记住的事情是在servlet停止时取消计时器。如果忘记取消计时器,您的webapp将遭受内存泄漏(类加载器泄漏,因为计时器的线程通过其ContextClassLoader绑定到WebappClassLoader),并且无法多次部署