нужно ли использовать блокировку мьютекса при доступе к глобальным переменным Grails? - PullRequest
1 голос
/ 24 июня 2019

Мне интересно В глобальных переменных grails - нужно ли добавлять блокировку мьютекса при доступе к ним?Пример

  • Статическая переменная в классе XXXService
  • Контекст приложения Grails

Ответы [ 2 ]

4 голосов
/ 24 июня 2019

Мне интересно, в глобальных переменных grails - нужно ли нам добавлять мьютекс блокировка при доступе к ним?

JVM не имеет глобальных переменных. Ближе всего к ним относятся открытые статические переменные, что на самом деле не одно и то же.

Необходимость добавления мьютекса или нет, зависит от того, что вы хотите сделать с переменными. В общем случае ответ «нет», но это отчасти потому, что в общем случае вы не хотите иметь изменяемые публичные статические переменные.

1 голос
/ 24 июня 2019

Вам нужно синхронизировать эти объекты, только если они должны быть поточно-ориентированными.Большинству вещей в контексте приложения Grails не нужно (например, просто получить одноразовую услугу).

Таким образом, ответ на ваш вопрос не очень ясен.Сделайте это, когда почувствуете, что необходимо убедиться, что предыдущий процесс завершен с переменной, о которой вы заботитесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...