Многопоточность в Spring MVC

229
19 февраля 2018, 02:36

Как создать параллельный поток в приложении реализованном на Spring MVC. Чтобы при загрузке сервера создавался новый поток, который например бы каждую минуту генерировал рандомное число и, например, можно было взять как нибудь из этого потока(Класса) число в определенное время.

Answer 1

Для этого не надо запускать постоянно работающий фоновый поток, можно просто запланировать выполнение метода раз в минуту:

@Service
public class RandomService {
    private int randomValue;
    @Scheduled(fixedDelay=60000)
    public void generateValue() {
        randomValue = ThreadLocalRandom.current().nextInt(100);
    }
    ...
}

А если постоянно работающий фоновый поток всё же нужен, то ничто не мешает объявить бином наследника Thread и пометить аннотацией @PostConstruct метод start(). Или подобным же образом использовать ThreadPoolTaskExecutor.

READ ALSO
Table “table_name” cannot be resolved

Table “table_name” cannot be resolved

Создаю базу данных магазина, использую jpa hibernateЕсть 4 класса-сущности:

269
Взаимодействие floating action button и viewpager

Взаимодействие floating action button и viewpager

У меня есть TabLayout c 2 вкладками и ViewPagerВ каждую вкладку надо установить свои функции FloatingActionButton (в одном фрагменте она выполняет одну функцию,...

212
Почему не отображается содержимое h:outputLabel?

Почему не отображается содержимое h:outputLabel?

ЗдравствуйтеИзучаю интеграцию JSF & Spring

176
Мультиязычная БД для приложения

Мультиязычная БД для приложения

Доброго времени суток

207