Add comments

This commit is contained in:
Neil Alexander 2021-06-28 13:34:54 +01:00
parent f9ab3f4b81
commit 4a37b19a8f
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944

View file

@ -29,6 +29,9 @@ func (q *fifoQueue) push(frame *inputTask) {
} }
} }
// pop returns the first item of the queue, if there is one.
// The second return value will indicate if a task was returned.
// You must check this value, even after calling wait().
func (q *fifoQueue) pop() (*inputTask, bool) { func (q *fifoQueue) pop() (*inputTask, bool) {
q.mutex.Lock() q.mutex.Lock()
defer q.mutex.Unlock() defer q.mutex.Unlock()
@ -47,6 +50,8 @@ func (q *fifoQueue) pop() (*inputTask, bool) {
return frame, true return frame, true
} }
// wait returns a channel which can be used to detect when an
// item is waiting in the queue.
func (q *fifoQueue) wait() <-chan struct{} { func (q *fifoQueue) wait() <-chan struct{} {
q.mutex.Lock() q.mutex.Lock()
defer q.mutex.Unlock() defer q.mutex.Unlock()