1
0
mirror of https://github.com/Mrs4s/MiraiGo.git synced 2025-05-04 11:07:40 +08:00
MiraiGo/binary/writer_test.go
wdvxdr d233c90d50
change writer without buffer
使用了sync.Pool,从池中取出来的自带一定容量,所以无需使用Buffer
2021-03-23 22:37:36 +08:00

52 lines
844 B
Go

package binary
import (
"math/rand"
"testing"
)
func BenchmarkNewWriterF128(b *testing.B) {
test := make([]byte, 128)
rand.Read(test)
b.StartTimer()
b.RunParallel(func(pb *testing.PB) {
for pb.Next() {
NewWriterF(func(w *Writer) {
w.Write(test)
})
}
})
}
func BenchmarkNewWriterF128_3(b *testing.B) {
test := make([]byte, 128)
rand.Read(test)
b.StartTimer()
b.RunParallel(func(pb *testing.PB) {
for pb.Next() {
NewWriterF(func(w *Writer) {
w.Write(test)
w.Write(test)
w.Write(test)
})
}
})
}
func BenchmarkNewWriterF128_5(b *testing.B) {
test := make([]byte, 128)
rand.Read(test)
b.StartTimer()
b.RunParallel(func(pb *testing.PB) {
for pb.Next() {
NewWriterF(func(w *Writer) {
w.Write(test)
w.Write(test)
w.Write(test)
w.Write(test)
w.Write(test)
})
}
})
}