我在结果中看到的只是暗示线程没有平均共享执行时间
好吧,如果您追求效率,这就是您所不想要的。取消执行某个线程并调度另一个线程通常非常昂贵。因此,这样做实际上是有利的
one of them, oncetakes over, executingon。当然,如果这样做过分,您会看到更高的吞吐量,但响应时间更长。理论上。实际上,JVM线程调度已针对几乎所有目的进行了很好的调整,并且您不想在几乎所有情况下都尝试对其进行更改。根据经验,如果您对以毫秒为单位的响应时间感兴趣,则可能要远离混乱。
tl; dr:这并不是效率低下,您可能希望保持原样。
编辑:
话虽如此,使用an
AtomicInteger可能对性能有所帮助,而且我认为比使用lock(
synchronized关键字)容易出错。为了获得可衡量的收益,您需要非常努力地达到该变量。



