defer r.mutex.Unlock()
sequenceNumber := r.counter
if _, ok := r.register[sequenceNumber]; ok {
defer r.mutex.Unlock()
sequenceNumber := r.counter
if _, ok := r.register[sequenceNumber]; ok {
return sequenceNumber, false
}
r.register[sequenceNumber] = false
return sequenceNumber, false
}
r.register[sequenceNumber] = false