Я ищу расширение, такое как коммутатор, но вместо того, чтобы по умолчанию использовать самый последний поток, мне нужен коммутатор с дополнительной переменной, которая может идти назад и вперед на основе другого внешнего события.Переключение активного потока кадров
например. Мы наблюдаем, что является слиянием двух потоков A
и B
, когда обнаружено событие C
, я хочу, чтобы наблюдаемый A
прошел, и потоки от B
будут проигнорированы (потеряны). Когда обнаружено событие D
, я хочу, чтобы наблюдаемый поток A
был удален, и B
был пройден.
Какой лучший оператор linq для этого? Полагаю, я мог бы использовать комбинацию того, где и какое-то пользовательское решение, но действительно искал более элегантное решение.
Также я хотел бы избегать подписки/регенерации из потока, где это возможно. Я просто нахожу подписку/переподписку вообще очень сложно отслеживать, а также сложно связать операторов.
Являются ли события 'C' и' D' выведенными из чего-то в потоках 'A' и' B' или являются ли они внешними событиями? И являются ли «А» и «В» одним и тем же типом? – yamen
@yamen Это внешние события. – Alwyn