Я пытаюсь запланировать один метод, который будет выполняться каждую минуту весной с xml config как <property name="corePoolSize" value="4" /> <property name="maxPoolSize" value="10" /> <task:scheduled ref="methodscheduler" method="some_method()" cron="* * * * * *"
, и я пытаюсь выполнить некоторый процесс, используя для l oop в методе some_method()
.
Здесь я ожидаю, что один поток выполнит задачу и выдаст результат, например, скажем, если я вывожу 10 значений, тогда он должен быть как thread 1: i = 1, i = 2, i = 3.....i = 10
, но я получаю, что 2 потока из пула пытаются получить доступ к одному и тому же ресурсу одновременно с результатом - thread 1: i = 1, thread 2: i = 1, thread 1: i = 2, thread 2: i = 2 ..... thread 1: i = 10, thread 2: i = 10
.
Как можно ограничить работу одного потока для этого метода, чтобы избежать повторения?