java - 当方法同步时,我们可以使用 StringBuilder 而不是 StringBuffer 吗?

标签 java concurrency synchronization stringbuilder stringbuffer

我有一个同步方法。我想使用字符串缓冲区来形成一个长连接字符串。我知道 StringBuffer 和 StringBuilder 都可以完成这项工作。同时,我认为 StringBuilder 更好,因为它不会产生任何额外的同步成本,因为该方法已经这样做了。

你说什么?

最佳答案

只要多个线程不访问 StringBuilder 本身或导致它以并发方式访问,那么就应该没问题。

在您的情况下,如果 StringBuilder/Buffer 所在的方法是同步,则任何时候只有一个线程可以访问它,因此 StringBuilder 应该足够了。

关于java - 当方法同步时,我们可以使用 StringBuilder 而不是 StringBuffer 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23421372/

相关文章:

javascript - 使用 EventSourcing(NodeJS、MongoDB、JSON)跨多个偶尔连接的客户端同步数据

java - 强化与 Maven 的集成 - 安装

java - 来自父类(super class)的方法

java - 在其他几个任务完成后运行该任务

Golang 缓冲 channel 在发送之前接收数据

java - 用于 Java 线程安全的公共(public)最终互斥锁

java - 如何在scala中将java接口(interface)转换为java对象

java - 地址簿中的逻辑问题,不应有空白条目或相同条目...请帮助

concurrency - 并发模型列表

scala - 如何在scala中创建同步对象方法