5

我正在创建一个新的 Netty 管道,我正在尝试:

  1. 避免过早优化。
  2. 编写易于向我的一位实习生解释的代码。

这种工厂方法当然很容易解释:

public String toJSON()
{
    Gson gson = new Gson();
    return gson.toJson(this);
}

在一个有点相关的问题中,OP 询问是否可以(意味着线程安全)重用 Gson 对象的单个实例。我的问题略有不同:是否有充分的理由分享对象?如果是这样,在什么复杂程度下共享 Gson 对象是值得的?权衡在哪里?

4

1 回答 1

2

它很昂贵,而且成本与您使用 Gson 绑定的数据模型的复杂性成比例。我写了一篇文章Reflection Machines,解释了为什么创建 Gson 实例很昂贵并且应该最小化。

于 2017-11-29T03:16:08.263 回答