Issues with TimerTask



大家好,我使用RuleStudio(修改过的Eclipse)在IBM Websphere ILOG JRules 7.0中工作,并且在尝试实现TimerTask时遇到了问题。

我创建了一个技术规则基于一个不同的规则,我知道的工作,并试图添加一些代码,将等待5秒,然后发送二次消息。我通过以下代码进行了尝试:

int interval = 5000; // 5 sec
java.util.Date timeToRun = new java.util.Date(System.currentTimeMillis() + interval);
java.util.Timer timer = new java.util.Timer();
timer.schedule(new java.util.TimerTask() {
        public void run() {
            //  Message Sent Here
        }
    }, timeToRun); 

但是,这段代码无法编译。它指出的错误在new java.util.TimerTask()后面的右开括号上,错误消息是at token "{"

一些有趣的观察:

-我试着做java.util.TimerTask test = new java.util.TimerTask();,它抛出一个错误在new java.util.TimerTask();Could not find a public constructor (or argument mismatch) for java.util.TimerTask.,我发现奇怪,因为它肯定是导入的。

我的电脑上安装了Java版本1.6.0_17,如果需要的话。

谢谢!

我没有ILOG的经验,但我猜这可能会更好:

java.util.Timer timer = new java.util.Timer();
class MyTask extends java.util.TimerTask {
    public void run() {
        //  Message Sent Here
    }
}
timer.schedule(new MyTask(), timeToRun);

如果仍然不起作用,将MyTask从方法中取出

注意到这仍然是打开的,原来我们使用的引擎上有一个定制的java库,不包括TimerTask…哎。使用了一个线程睡眠命令,这个命令库实际上有。

相关内容

  • 没有找到相关文章

最新更新