我在Anylogic中构建了一个简单的代理基础模型。我想实施的是代理商的匮乏。该代理具有hunger
参数。我想每小时设置hunger
+1。我想这应该与周期完成,但我不知道如何开始。有人可以帮助我建立这个循环吗?在java中使用时间单位
1
A
回答
0
这是一个解决方案,但是这并没有考虑完成run()方法的时间。
public class HourRun implements Runnable {
private final ScheduledExecutorService scheduler
= Executors.newScheduledThreadPool(1);
int period = 1;
int delay = 0;
TimeUnit timeUnit = TimeUnit.HOURS;
ScheduledFuture scheduledFuture;
public HourRun() {
scheduledFuture = scheduler.scheduleAtFixedRate(this,
period, delay, timeUnit);
}
@Override
public void run() {
// This will be called every hour.
}
}
如果你希望它是run()方法的终点之间的一个小时,然后在构造函数中使用使用这种代替。
int initialDelay = 0;
scheduler.scheduleWithFixedDelay(this, initialDelay, delay, timeUnit)
这将在run()方法中运行的所有操作,调用之间等待1小时,然后再次调用它。 我不确定这是不是你想要的。 也许这更容易?
new Thread(new Runnable() {
@Override
public void run() {
try {
TimeUnit.HOURS.sleep(1);
} catch (InterruptedException e) {
// Code here
}
}
}).start();
这将运行任何你想在一个单独的线程,将睡在大多数时间。祝你好运,我希望我能以某种方式帮助你。
1
看看java的时间API这里:https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html
看java.time.Duration类,它有您正在寻找的功能。如果没有发布代码,我无法提供具体的帮助。
相关问题
- 1. 的Java:单独的时间位数
- 2. 使用Kernprof更改时间单位
- 3. Java - 在J2ME中使用日期/时间
- 4. 如何在java中使用EPOCH时间?
- 5. 在Java和.net中使用UTC时间?
- 6. 如何在C++中查找持续时间(时间)单位11
- 7. 以分钟为单位的一天中的时间Java
- 8. Java中的离散事件模拟时间单位
- 9. 使用时间计算两次之间的中位时间
- 10. Apache CXF方法中使用的时间单位
- 11. 在java中使用位操作符时使用哪个包?
- 12. 本地化时间单位
- 13. 执行时间:单位
- 14. Lubridate修复时间单位
- 15. CSS过渡时间单位
- 16. getTickCount时间单位混淆
- 17. C++旧时间到现在时间以小时为单位
- 18. 使用计时器以秒为单位的显示时间
- 19. java将时间戳以秒为单位转换为以毫秒为单位的时间戳
- 20. Big-O和通用时间单位?
- 21. matlab中命令simin的时间单位
- 22. tcpdump timestamps中的时间单位
- 23. 在R中生成时间间隔,以分钟为单位
- 24. 如何在Java中使用Java插入当前时间
- 25. 在Java中维护一个单独的应用程序时间?
- 26. Java中不使用乔达时间的时间转换
- 27. 绘制时间以小时为单位?
- 28. 以毫秒为单位在Java中使用Timer.schedule()
- 29. 跟踪时间在Java中
- 30. 建模时间在java中
这将是一个很好的解决方案。但是我发现,anylogic有一个调度器函数,你可以在API中设置它:-) –