2012-05-23 2 views
0

Я использую gson 1.7 и я вижу, что он имеет упорядоченный блок в toJson() в классеПроизводительность синхронизированного getHandlerFor (типа) Gson

final class ParameterizedTypeHandlerMap<T>{ 
.... 
public synchronized T getHandlerFor(Type type) { 
.... 

Если я создаю объект за каждый запросите также, что он имеет синхронизированный блок в конструкции.

У меня есть несколько вопросов:

  1. DoES версии 2.1 имеет тот же behaver?
  2. Безопасно ли (в перспективе для обратной совместимости) до версии 2.1
  3. Что такое лучший пакет производительности для json?
+1

Ваше имя неверное. Это означает, что вы сделали собственное тестирование производительности, которое, читая ваш вопрос, казалось бы, вы этого не сделали. что ты уже испробовал? – Perception

ответ

0

Я использую gson 2, и он работает так же, как 1,7 для меня. Вы можете создать экземпляр Gson для вашего потока, если синхронизация вас пугает.

+0

, что я сейчас делаю с местными жителями. но с потоками tomcat это не так прямолинейно. – Julias

+0

Вы можете создать новый экземпляр Gson в каждом методе, где вы его используете: Gson gson = new Gson(); String json = gson.toJson (someObject); Фактически я всегда использую этот шаблон для Гсона. – alexey28

+0

создание также очень дорого во время выполнения. Он имеет синхронизированный блок внутри – Julias