Как добиться опроса таблицы каждые несколько секунд, используя многопоточность / threadpool - PullRequest
0 голосов
/ 08 ноября 2019

У меня есть требование, когда мне нужно опрашивать таблицу каждые 5 секунд. Если есть новая запись с определенным флагом статуса, мне придется обработать ее и создать отчет с использованием JasperReports, и после завершения процесса мне придется обновить статус, как сделано.

Нам необходимо реализовать многопоточность, при которой, если один поток опрашивает и находит новую запись, он начинает ее обрабатывать и генерирует отчет.

Если эта обработка занимает более 5 секунд, только другой поток должен опросить таблицу и выбрать, присутствует ли запись. Если первый поток занят обработкой более 5 секунд, то включается второй поток, если второй поток занят более 5 секунд, то третий поток может подключиться, поэтому нам также нужен пул потоков. Но два потока могут опрашивать таблицу с разницей во времени в 5 секунд.

В целом, таблица должна опрашиваться только один раз в 5 секунд.

...