本当にただのメモ

なるべく Qiita に投稿しよう

Go と stream のあれこれ

  • Golangでのstreamの扱い方を学ぶ - Carpe Diem
    • 要約: Streamで扱っているものはStreamのまま扱う( = io.Reader を毎回 ioutil.ReadAll で[]byteに変換せずにそのまま使う)。
    • 理由: メモリの効率化。 ioutil.ReadAll などで一旦全て []byte に変換すると、その分メモリを消費するし、アロケーションGCに依る速度低下が起きる。
    • ioutil.ReadAll + json.Unmarshal でなく json.NewDecoder を使うべきなのも同様の理由