ThreadLocal变量的性能

ThreadLocal变量的性能,第1张

ThreadLocal变量的性能

运行未发布的基准测试,

ThreadLocal.get
我的计算机上每次迭代大约需要35个周期。没什么。在Sun的实现中,
Thread
ThreadLocal
s
映射为值的自定义线性探测哈希图。由于只能通过单个线程访问它,因此它可能非常快。

小对象的分配需要类似的周期数,尽管由于缓存耗尽,您可能会在紧密循环中得到较低的数字。

的建造

MessageDigest
可能相对昂贵。它具有相当数量的状态,并且通过
Provider
SPI机制进行构造。您可以通过克隆或提供来进行优化
Provider

仅仅因为缓存

ThreadLocal
而不是创建可能更快,并不一定意味着系统性能会提高。您将有与GC相关的额外开销,这会降低一切。

除非您的应用程序使用率很高,否则您

MessageDigest
可能需要考虑使用常规的线程安全缓存。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5499743.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存