У меня есть программа, которую нужно запускать примерно через равные промежутки времени, навсегда. Я нашел ScheduledExecutorService и заметил его метод scheduleAtFixedRate(). Здесь есть простое руководство.
Мой вопрос: если моя программа продолжает работать так, как должна (примерно каждые 60 секунд до конца времени), нужно ли что-то делать для обработки сборки мусора, если я использую вышеуказанный метод? Нужно ли закрывать темы и т. д.? Должен ли я запускать System.gc? Я все еще привыкаю к Runnables.
На данный момент я использую цикл while и thread.sleep(60000) для выполнения моей задачи каждые 60 секунд. Однако при этом сборка мусора не выполняется, и после нескольких дней работы моя программа использует более 70% памяти сервера.
Спасибо за любую помощь, которую вы можете дать. Я ценю ваше время, помогая мне с моей проблемой новичка. По сути, это второй год моего путешествия по Java!