2012-11-16 3 views
27

os.Stdout.Write() ist ein ungepufferter Schreibvorgang. Um eine gepufferte Schreib zu erhalten, kann man verwenden:Idiomatisch Puffer os.Stdout

f := bufio.NewWriter(os.Stdout) 
f.Write(b) 

Gibt es eine idiomatische Weise gepufferte Ausgang zu bekommen?

Antwort

31

Nein, das ist der idiomatische Weg, Schreibvorgänge an Stdout zu puffern. In vielen Fällen werden Sie eine Zurückstellungs tun auch hinzufügen:

f := bufio.NewWriter(os.Stdout) 
defer f.Flush() 
f.Write(b) 

Dadurch wird sichergestellt, dass der Puffer geleert wird, wenn Sie aus der Funktion zurück.