diff options
Diffstat (limited to 'src/encoding/binary/binary_test.go')
| -rw-r--r-- | src/encoding/binary/binary_test.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/encoding/binary/binary_test.go b/src/encoding/binary/binary_test.go index 4b22b28843..6cd0b92fa3 100644 --- a/src/encoding/binary/binary_test.go +++ b/src/encoding/binary/binary_test.go @@ -631,6 +631,31 @@ func BenchmarkWriteStruct(b *testing.B) { } } +func BenchmarkWriteSlice1000Structs(b *testing.B) { + slice := make([]Struct, 1000) + buf := new(bytes.Buffer) + var w io.Writer = buf + b.SetBytes(int64(Size(slice))) + b.ResetTimer() + for i := 0; i < b.N; i++ { + buf.Reset() + Write(w, BigEndian, slice) + } + b.StopTimer() +} + +func BenchmarkReadSlice1000Structs(b *testing.B) { + bsr := &byteSliceReader{} + slice := make([]Struct, 1000) + buf := make([]byte, Size(slice)) + b.SetBytes(int64(len(buf))) + b.ResetTimer() + for i := 0; i < b.N; i++ { + bsr.remain = buf + Read(bsr, BigEndian, slice) + } +} + func BenchmarkReadInts(b *testing.B) { var ls Struct bsr := &byteSliceReader{} |
