0

我在tomcat下使用cron4j。
我在 servlet 中启动调度

doGet(){
  ...
  S.start();
  ...
}

即使我再次意外调用此 servlet,如何防止多次启动此 cron 任务?

4

1 回答 1

0

如前所述,对于一次性初始化代码,最好使用其中一个ServletContextListener或方法。Servlet.init()但是,如果您想要一个答案,如何doGet()只做一次,然后int counter=0在 servlet 中声明和调用实例变量。在第一次调用doGet()增量 this时counter=1。检查计数器值,如果大于 0,则不要再次初始化。您可以使用同步块来增加值或将其声明为 volatile 以使其更加美观。

于 2014-02-25T15:41:08.793 回答