java如何计算线程池中线程同步和异步运行时间

Python012

java如何计算线程池中线程同步和异步运行时间,第1张

两个相减就是运行时间。启动线程之前,获取系统时间,做为开始时间,线程结束后,在线程最后再获取一次系统时间,这个时间减去刚刚上面的那个时间,就是运算时间,记录一个起始时间,记录一个结束时间,两个相减就是程序运行时间。

线程是独立的,启动了,就不受控,你可以考虑下面的方式,虽然不优雅,不过能解决你的问题,而跟线程相关的,也只能这样来设计。

(如果你觉得线程的不太优雅,你可以采用观察者的模式来加在一起,那代码就优雅多了,简单的问题,不建议搞得这么优雅,你觉得呢?)

启动线程之前,获取系统时间,做为开始时间

线程结束后,在线程的代码的最后再获取一次系统时间,这个时间减去刚刚上面的那个时间,就是运算时间

海枫科技、海枫论坛

使用Timer和Timertask,可以设定在什么时候自动运行。

Timer有个scheduleAtFixedRate(TimerTask

task,

Date

firstTime,

long

period)

方法,可以firstTime设置城下一个你要执行的时间,将period设置为24小时,这样就实现了固定时间执行程序的功能