您的位置首页百科问答

Java timer 自己停止

Java timer 自己停止

java定时器停止可以使用timer类的cancel方法,代码如下:

final Timer timer = new Timer();

TimerTask task = new TimerTask() {

private int count;

@Override

public void run() {

this.count++;

System.out.println(count);

if (count == 10) {

System.out.println("定时器停止了");

timer.cancel();// 停止定时器

}

}

};

timer.schedule(task, 0, 1000);// 1秒一次运行结果如下:

1、scheduleUpdate

加入当前节点后,程序会每帧都会自动执行一次默认的Update函数。(注:一定是Update函数哦,若想调用其他自己命名的函数则使用schedule)

看例子,走起。

首先在HelloWord类的头文件中声明Update函数:

[cpp] view plain copy print?

void update(float dt); //注意参数类型

然后在HelloWorld类源文件中实现函数Update:

[cpp] view plain copy print?

void HelloWorld::update(float dt)

{

CCLOG("baibai");

}

现在我们可以调用了,在需要他不断执行的地方加入调用的代码就ok:

[cpp] view plain copy print?

this->scheduleUpdate(); //this是当前节点,如layer,所以可以省略啦。

运行之后你将会看到不断有baibai被打印出来

2、scheduleUpdate

可以没隔几秒执行某个自定义的函数,来看代码:

首先还是在HelloWorld中声明所要执行的函数:

public static void main(String[] args) {

final Timer timer = new Timer();

TimerTask task = new TimerTask() {

private int count;

@Override

public void run() {

this.count++;

System.out.println(count);

if (count == 10) {

System.out.println("定时器停止了");

timer.cancel();// 停止定时器

}

}

};

timer.schedule(task, 0, 1000);// 1秒一次

}