2012-11-16 6 views
27

os.Stdout.Write() एक unbuffered लिखना है। एक बफ़र लिखने पाने के लिए, एक का उपयोग कर सकते हैं:Idiomatically बफर os.Stdout

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

वहाँ बफ़र उत्पादन प्राप्त करने के लिए एक और अधिक मुहावरेदार रास्ता नहीं है?

उत्तर

31

नहीं, यह स्टडआउट को लिखने के लिए सबसे बेवकूफ तरीका है। कई मामलों में, आप भी करने के लिए एक आस्थगित करें जोड़ना चाहते हैं जाएगा:

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

यह सुनिश्चित होगा कि बफर प्लावित है जब आप समारोह से लौटने।

संबंधित मुद्दे