"StringBuffer是同步的(或线程安全的)而StringBuilder不是",为什么这会使StringBuffer方法变慢?

Sha*_*ala 3 java stringbuilder synchronization stringbuffer thread-safety

看完之后 - '同步'是什么意思?我仍然无法理解为什么在线程安全的环境中StringBuffer比StringBuilder慢.StringBuffer必须做多少耗时的工作才能让它变慢?

Mik*_*uel 7

有一些小的开销获取和释放甚至是无竞争锁定,即使大多数实例没有使用跨线程,因为一个实例可能是锁定省略也不会工作StringBuffer.

有关VM在获取和释放锁时必须执行的操作的说明,请参阅http://book.javanb.com/java-threads-3rd/jthreads3-CHP-5-SECT-1.html.