Poiché Go ha canali, mi chiedevo perché la libreria standard non sembra essere stata progettata per usarli anche per IO.I/O canali vs lettore/scrittore
Esistono invece tipi di lettori e scrittori, ma quale sarebbe il problema con l'utilizzo dei canali?
Una funzione può restituire un canale di porzioni di byte (presupponendo che i ritorni a byte singolo o anche a bit singolo siano troppo inefficienti) e includa un canale per le richieste di annullamento e un canale per la segnalazione degli errori.
-Il curioso Go novizio.
Quindi ho capito che il tuo punto è duplice: 1) i canali saranno un collo di bottiglia per le prestazioni in questo caso, e 2) i canali nasconderebbero l'IO e ai designer non piace. Sarebbe interessante fare misurazioni delle prestazioni del lettore/scrittore vs canali per avere una comprensione di quale sarà la penalità effettiva delle prestazioni - realizzando ovviamente che i compilatori possono ottimizzare per casi semplici e le ottimizzazioni diventeranno più sofisticate nel tempo. Rob Pike ha parlato delle opportunità di ottimizzazione delle prestazioni per i canali. –