In Go kann man Einweg-Kanäle erstellen. Es ist eine sehr praktische Funktion, wenn man einen Satz von Operationen auf dem gegebenen Kanal einschränken möchte. Soweit ich sehen kann, ist diese Funktion nur für die Argumente der Funktion und die Typspezifikation der Variablen nützlich, während das Erstellen von Einweg-Kanälen über make
für mich seltsam aussieht. Ich habe diese question gelesen, aber es geht nicht darum, in Go nur Kanäle zu lesen (oder zu schreiben), es geht um die Verwendung im Allgemeinen. Also, meine Frage bezieht sich auf Anwendungsfälle des nächsten Codes:Was ist der Punkt der Erstellung von Einweg-Kanälen in Go
writeOnly := make(chan<- string)
readOnly := make(<-chan string)
Es gibt keinen Sinn wirklich; mache keine direktionalen Kanäle. – JimB
@ JimB, könnten Sie bitte erklären warum? –
Sie können einen Nur-Richtungs-Kanal für nichts Nützliches verwenden, außer für die Blockierung für immer. Es ist also nicht nötig, jemals einen zu erstellen. – JimB