• Brad Fitzpatrick's avatar
    bufio: reuse Writer buffers after Flush · 99f67228
    Brad Fitzpatrick authored
    A bufio.Writer.Flush marks the usual end of a Writer's
    life. Recycle its internal buffer on those explicit flushes,
    but not on normal, as-needed internal flushes.
    
    benchmark               old ns/op    new ns/op    delta
    BenchmarkWriterEmpty         1959          727  -62.89%
    
    benchmark              old allocs   new allocs    delta
    BenchmarkWriterEmpty            2            1  -50.00%
    
    benchmark               old bytes    new bytes    delta
    BenchmarkWriterEmpty         4215           83  -98.03%
    
    R=gri, iant
    CC=gobot, golang-dev, voidlogic7
    https://golang.org/cl/9459044
    99f67228
bufio.go 16.3 KB