У меня есть класс IntentService, который можно запускать из разных мест сложного приложения. Действия, фон Темы, другие услуги. Я хотел бы сохранить счетчик того, сколько раз вызывалась служба. Я использую частную переменную int в своем классе IntentService, чтобы отслеживать это, я увеличиваю ее из моего onStartCommand(...).
Мне просто пришло в голову, что, поскольку метод onStartCommand(...) можно вызывать из различных асинхронных потоков, это может быть не потокобезопасным решением. Итак, вопрос в том, нужно ли мне обернуть доступ к этой переменной счетчика в синхронизированном блоке, или реализация IntentService onStartCommand(...) позаботится об этом за меня?
В качестве примечания я знаю, что могу безопасно увеличить переменную из onHandleIntent (...), но мне нужно подсчитывать фактические запросы, а не выполненные намерения.