Skip to content

Commit b0ab6a8

Browse files
committed
refactor: use mutex for the queue pop
1 parent 939f179 commit b0ab6a8

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

core/queue.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import (
44
"sync"
55
)
66

7-
var mutex sync.Mutex
7+
var queueMutex sync.Mutex
88

99
type queue struct {
1010
requests []int
@@ -21,8 +21,8 @@ func NewQueue(limit int) queue {
2121
}
2222

2323
func (q *queue) Push() int {
24-
mutex.Lock()
25-
defer mutex.Unlock()
24+
queueMutex.Lock()
25+
defer queueMutex.Unlock()
2626

2727
length := len(q.requests)
2828

@@ -37,6 +37,9 @@ func (q *queue) Push() int {
3737
}
3838

3939
func (q *queue) Pop() {
40+
queueMutex.Lock()
41+
defer queueMutex.Unlock()
42+
4043
q.requests = q.requests[:len(q.requests)-1]
4144
}
4245

0 commit comments

Comments
 (0)