func bqDequeue(msgCount, msgSize int64, q *spscq.ByteQ, done chan bool) { runtime.LockOSThread() start := time.Now().UnixNano() readBuffer := make([]byte, msgSize) sum := int64(0) checksum := int64(0) for i := int64(0); i < msgCount; i++ { for r := false; r == false; r = q.Read(readBuffer) { } sum += int64(readBuffer[0]) checksum += int64(byte(i)) } nanos := time.Now().UnixNano() - start printTimings(msgCount, nanos, "bq") expect(sum, checksum) done <- true }