Jaki jest sens kanałów jednokierunkowych w Go?

Uczę się Go i jak dotąd jestem pod wrażeniem. Przeczytałem wszystkie dokumenty online na golang.org i jestem w połowie „Rozmowy językowej programowania” Chrisnall'a. Dostaję koncepcję kanałów i myślę, że będą niezwykle przydatne. Jednak po drodze musiałem przegapić coś ważnego, ponieważ nie widzę sensu w kanałach jednokierunkowych.

Jeśli interpretuję je poprawnie, kanał tylko do odczytu może być odbierany tylko, a kanał tylko do zapisu może być przesyłany tylko dalej, więc po co mieć kanał, do którego można wysyłać i nigdy nie odbierać? Czy można je rzucać z jednego „kierunku” na drugi? Jeśli tak, to jaki jest sens, jeśli nie ma faktycznego ograniczenia? Czy są niczym więcej niż wskazówką do kodu klienta celu kanału?

questionAnswers(3)

yourAnswerToTheQuestion