【发布时间】:2011-06-25 14:52:15
【问题描述】:
本质上,我正在寻找可以模拟时钟的东西,并且可以通过调用方法将其向前增加一个时间单位。在标准 Java 库中可以找到诸如此类的东西吗?还是您必须自己实现?
【问题讨论】:
标签: java events simulation clock
本质上,我正在寻找可以模拟时钟的东西,并且可以通过调用方法将其向前增加一个时间单位。在标准 Java 库中可以找到诸如此类的东西吗?还是您必须自己实现?
【问题讨论】:
标签: java events simulation clock
根据您的用例,查看以下内容:
简单:
int counter; //counter++
long counter; //counter++ (If you expect the time to overflow int)
可变 (org.apache.commons.lang.mutable.*):
MutableInt counter; //counter.increment();
MutableLong counter; //counter.increment();
线程安全:
AtomicInteger counter; //counter.incrementAndGet();
AtomicLong counter; //counter.incrementAndGet();
【讨论】:
看看 SimKit。它是一个基于 Java 的开源离散事件引擎。它有据可查,您可以提取时钟和事件列表并根据自己的目的进行自定义。它得到了很好的支持,因为它被用来向研究生教授 DES 的入门课程。
【讨论】:
一个简单的整数呢? - 可以加一:counter++
或者java.util.concurent.atomic.AtomicInteger,如果你有多个线程。它甚至提供了incrementAndGet() 函数。
【讨论】:
标准日历 / GregorianCalendar 应该可以为您解决问题。
【讨论】:
我不了解标准 Java API,但在自行开发之前请查看 Quartz
【讨论】: