(b *testing.B, n int)
| 108 | } |
| 109 | |
| 110 | func benchmarkRequestChanN(b *testing.B, n int) { |
| 111 | var request = &Request{ |
| 112 | Multi: make([]*redis.Resp, 1024*1024), |
| 113 | } |
| 114 | var ch = NewRequestChanBuffer(n) |
| 115 | go func() { |
| 116 | defer ch.Close() |
| 117 | for i := 0; i < b.N; i++ { |
| 118 | ch.PushBack(request) |
| 119 | if i%1024 == 0 { |
| 120 | runtime.Gosched() |
| 121 | } |
| 122 | } |
| 123 | }() |
| 124 | |
| 125 | ch.PopFrontAllVoid(func(r *Request) {}) |
| 126 | } |
| 127 | |
| 128 | func BenchmarkRequestChan128(b *testing.B) { benchmarkRequestChanN(b, 128) } |
| 129 | func BenchmarkRequestChan256(b *testing.B) { benchmarkRequestChanN(b, 256) } |
no test coverage detected