2017-01-30 5 views
1

Если создать два потока и соединить два:отключение коллектора потока без закрытия других потоков

(def a (stream/stream)) 
(def b (stream/stream)) 
(stream/connect a b) 

Когда «а» закрытой «Ъ» закрывает

(stream/closed? b) => false 
(stream/close! a) 
(stream/closed? b) => true 

Есть ли способ отключить 'a' от 'b', не закрывая 'b'?

ответ

1

Да, есть. Согласно документу из stream/connect:

Необязательно берет карту параметров:

...

  • вниз по течению? - если закрытие источника закроет мойку. Значение по умолчанию равно true.

...

Итак, вам нужно подключить потоки следующим образом:

(stream/connect a b {:downstream? false}) 
+0

спасибо! это отлично работает. – zcaudate