我想开始每隔n秒钟启动一种方法。但是这样做可以在运行时调整n

启动方法:PingInvoker.ping()

public class PingInvoker
{
  public void ping()
  {
    List<Server> svr = Manager.getList();

    for (Server i : svr)
      i.ping();
  }
}


应用环境:

???

最佳答案

class PingInvoker {

    public PingInvoker() {
        // TODO Auto-generated constructor stub
        Timer timer = new Timer();
        timer.schedule(new Mytask(), 0, period);
    }

    public void ping() {
        List<Server> svr = Manager.getList();

        for (Server i : svr)
        i.ping();
    }

    static class MyTask extends TimerTask {
        @Override
        public void run() {
          ping();
        }
    }


}

您必须将PingInvoker部署为单例bean,并根据需要指定这样的period

关于java - 如何使用Spring @Autowire设置TaskScheduler在n秒钟的可变时间内运行方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8669775/

10-10 10:46