Я получаю события с такой структурой:
class Data
{
public int counter;
public int type;
public int timestamp;
}
Задача:
Подождать какой-то период времени, чтобы получить несколько событий.
Отсортировать все по возрастающим значениям counter.
Найти смежные данные : counter, counter + 1.
Если timestamp2 — timestamp1 меньше T и type первого 0 , а второго 1 , то выдать новое событие.
Далее эти данные отбрасываются как ненужные, чтобы counter+1, counter+2 не сгенерировало еще событие
Вручную все описывается несложно, поток, очередь и проверки.
Возможно ли в этой ситуации применить Rx чтобы получить более декларативный код ?
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.