gpt4 book ai didi

java - TimerTask 替代方案

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:29:50 25 4
gpt4 key购买 nike

基本上我有 2 个类:MainPopulation。我想要做的是每秒使用 Population.grow()Population.total 增加 100。 Population 已经扩展了另一个类,所以我不能让它扩展 TimerTask

这是人口的代码:

public class Population extends AnotherClass{
private int total = 0;
void grow(){
this.population = this.population + 100;
}
}

Main 类:

public class Main{
public static void main(String [] args){
Population population = new Population();
}
}

通常我会做的只是让 Population 扩展 Timer执行这样的更新:

 Timer timer = new Timer();
timer.schedule(grow(), 1000);

问题是 MainPopulation 都不能扩展 Timer 或任何其他类,因为我需要 population 来在 Main 类中声明。那么我该怎么做呢?

最佳答案

你可以让它实现 Runnable 并使用 ScheduledExecutorService .

ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
scheduler.scheduleAtFixedRate(yourRunnable, 0, 1, TimeUnit.SECONDS);

关于java - TimerTask 替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16679233/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com