Парни, помогите решить задачку:
Делаю aggregator+handler.
Идея такая - на вход идут значения, C1..delay100ms.. D1..delay500ms..C2..delay1000ms..D2..delay100ms..delay1000ms
Все входные значения группируются через аггрегатор: C to 1,2,3... D to 1,2 и тд и кладется в кэше(мапа)
Как только появился новый ключ в кэше, то handler должен его обработать через определенное время, например 1000ms
Из текущего примера:
-первое значение C1 кладется в кэш C to 1 и стартует таймер на 1000ms после окончания которого должен обработать все значения по этому ключу и очистить кэш
-поступает второе значение D1, кладется в кэш D to 1 и стартует таймер на 1000ms
-поступает C2 и кладется по существующему ключу (до обработки C осталось в данном примере 400ms, a до обработки D - 500ms)
Вопрос как бы мне так хитро таймер реализовать?
Timer().schedule(delayMillis) {
// some logic
}