【发布时间】:2012-10-08 16:53:27
【问题描述】:
对于每个请求,都会发生大量计算。平均而言,回复需要大约 10 分钟的时间来处理。与此同时,如果用户发送新请求;之前的请求绝对没有继续的意义。
所以我写了一个代码,我基本上中断了执行它的前一个线程。在tomcat环境中这是一个好习惯吗?是否有更好的解决方案来处理它。中断tomcat线程可以吗。 还是我应该管理自己的线程池并让池为我做计算?
更多信息: 基本上整个任务都被一个 FutureTask 包裹着。对于每个请求,都会执行此任务,并且对任务的引用由 ConcurrentHashMap 存储。对于每个请求,映射中的所有未来都被“取消”,然后继续执行最新的请求。从而取消之前的请求。
【问题讨论】:
标签: java multithreading tomcat tomcat6 threadpool