java中的计时器有多精确?

java中的计时器有多精确?,java,android,timer,Java,Android,Timer,我基本上是计划每10秒运行一次任务,但它似乎每8或9秒运行一次。我使用功能计划(任务,0,10000) 我得说它相当准确。在我的应用程序(点击计数器)中,我使用计时器启动任务,使用独立的计时系统显示倒计时,它们完全同步 请随时查看我的应用=)尝试使用闹钟服务来安排任务 希望这些链接会有所帮助这是在android上运行还是在服务器上运行?您如何计算开始执行所需的时间?尝试一种精确的方法,例如使用System.currentTimeMillis()计算开始时间和结束时间之间的差值缓慢的任务可能会影响

我基本上是计划每10秒运行一次任务,但它似乎每8或9秒运行一次。我使用功能计划(任务,0,10000)

我得说它相当准确。在我的应用程序(点击计数器)中,我使用计时器启动任务,使用独立的计时系统显示倒计时,它们完全同步


请随时查看我的应用=)

尝试使用闹钟服务来安排任务


希望这些链接会有所帮助

这是在android上运行还是在服务器上运行?您如何计算开始执行所需的时间?尝试一种精确的方法,例如使用
System.currentTimeMillis()
计算开始时间和结束时间之间的差值缓慢的任务可能会影响计时。Java文档中写道:“与每个计时器对象相对应的是一个后台线程,用于按顺序执行计时器的所有任务。计时器任务应该很快完成。如果计时器任务花费过多的时间来完成,它会占用大量的时间。”“计时器的任务执行线程。这反过来会延迟后续任务的执行,当(如果)有问题的任务最终完成时,这些任务可能会“聚集”并快速连续执行。”您可以尝试使用with postdayed()代替计时器