func bqarlEnqueue(msgCount, msgSize int64, q *spscq.ByteQ, done chan bool) { runtime.LockOSThread() for i := int64(0); i < msgCount; i++ { writeBuffer := q.AcquireWrite(msgSize) for len(writeBuffer) == 0 { writeBuffer = q.AcquireWrite(msgSize) } writeBuffer[0] = byte(i) rem := msgSize - int64(len(writeBuffer)) q.ReleaseWriteLazy() for rem > 0 { writeBuffer = q.AcquireWrite(rem) rem -= int64(len(writeBuffer)) q.ReleaseWriteLazy() } } done <- true }