simplify random

pull/314/head
Darien Raymond 8 years ago
parent a14795e1e6
commit 1a1383c2ea
No known key found for this signature in database
GPG Key ID: 7251FFA14BB18169

@ -41,15 +41,16 @@ func NewUDPPayloadQueue(option ListenOption) *UDPPayloadQueue {
func (this *UDPPayloadQueue) Enqueue(payload UDPPayload) { func (this *UDPPayloadQueue) Enqueue(payload UDPPayload) {
size := len(this.queue) size := len(this.queue)
for i := 0; i < size; i++ {
idx := 0 idx := 0
if size > 1 { if size > 1 {
idx = dice.Roll(size) idx = dice.Roll(size)
} }
for i := 0; i < size; i++ {
select { select {
case this.queue[idx] <- payload: case this.queue[idx%size] <- payload:
return return
default: default:
idx++
} }
} }
} }

Loading…
Cancel
Save