]> Cypherpunks repositories - gostls13.git/commit
bufio: reuse Writer buffers after Flush
authorBrad Fitzpatrick <bradfitz@golang.org>
Tue, 21 May 2013 22:51:49 +0000 (15:51 -0700)
committerBrad Fitzpatrick <bradfitz@golang.org>
Tue, 21 May 2013 22:51:49 +0000 (15:51 -0700)
commit99f67228608db9c9a587586186ec612feb425e48
tree4d8b6eb53fe1eae38a18775f146be92fe208e6fa
parentddda7980c52414d6de69758c588bca1ba418d95d
bufio: reuse Writer buffers after Flush

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
src/pkg/bufio/bufio.go
src/pkg/bufio/bufio_test.go