У меня есть задача, запланированная как таковая:
<task:scheduler id="notification.scheduler" pool-size="15" />
<task:scheduled-tasks scheduler="notification.scheduler">
<task:scheduled ref="notificationProcessor" method="sendNextQueueEvent" fixed-rate="500" />
<task:scheduled ref="notificationProcessor" method="deleteNextCompletedEvent" fixed-rate="60000" />
</task:scheduled-tasks>
Я думаю, что неправильно понимаю, как запланированные задачи работают с размером пула. Несмотря на то, что размер пула равен 15, кажется, что только один поток Например, если у меня есть пятнадцать событий в очереди, я думаю, что будет пятнадцать потоков, проверяющих каждую минуту, чтобы удалить событие из очереди. Очевидно, это неправильно.
Как я могу сделать так, чтобы есть пятнадцать потоков, вызывающих этот метод для временного интервала с использованием абстракции планировщика Spring?
Изменить: я хочу выполнить следующее: каждые полсекунды я хочу проверять, есть ли в очереди события для отправки.Когда это будет сделано , я хочу отправить максимум 15 (если существует 15).Как мне добиться этого, используя абстракции Spring для материала потока Java?