【发布时间】:2017-01-24 09:58:48
【问题描述】:
您好,我想知道如何在 scala 中测量线程池时间。
这是一个例子。
val pool = java.util.concurrent.Executors.newFixedThreadPool(2)
val start_time = System.nanoTime()
1 to 10 foreach { x =>
pool.execute(
new Runnable {
def run {
try{
Thread.sleep(2000)
println("n: %s, thread: %s".format(x, Thread.currentThread.getId))
}finally{
pool.shutdown()
}
}
}
)
}
val end_time = System.nanoTime()
println("time is "+(end_time - start_time)/(1e6 * 60 * 60))
但我认为这不能正常工作。
有什么方法可以测量时间吗?
【问题讨论】:
-
什么是“线程池时间”?
-
线程池时间是指总运行时间。如果我在这段代码中使用 end_time 和 start_time,时间的结果就不能正常工作。
-
那你为什么叫它线程池时间而不是总运行时间?
-
很抱歉造成混乱。
标签: multithreading scala threadpool