gpt4 book ai didi

java - "StringBuffer is synchronized (or thread-safe) and StringBuilder is not",为什么这会使 StringBuffer 方法变慢?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:42:27 29 4
gpt4 key购买 nike

阅读本文后 - What does 'synchronized' mean?我仍然无法理解为什么 StringBuffer 在线程安全环境中会比 StringBuilder 慢。 StringBuffer 必须做哪些额外的耗时工作使其变慢?

最佳答案

获取和释放即使是无竞争的锁也有一些小的开销,并且 lock elision不会在 StringBuffer 中工作,即使大多数实例没有使用跨线程,因为一个实例可能是。

参见 http://book.javanb.com/java-threads-3rd/jthreads3-CHP-5-SECT-1.html获取和释放锁时 VM 必须执行的操作的描述。

关于java - "StringBuffer is synchronized (or thread-safe) and StringBuilder is not",为什么这会使 StringBuffer 方法变慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6293968/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com