diff --git a/synced-pool.go b/synced-pool.go index f79808b..0e019b6 100644 --- a/synced-pool.go +++ b/synced-pool.go @@ -217,6 +217,13 @@ func NewPacketQueue(connection net.Conn) *PacketQueue { } packetQueue.Inc() queue.mu.Lock() + for i, packet := range queue.Packets { + if time.Since(packet.Added) < time.Second*5 { + queue.Packets = queue.Packets[i:] + packetQueue.Set(float64(len(queue.Packets))) + break + } + } queue.Packets = append(queue.Packets, PacketWithData{ MessageType: messageType, Added: time.Now(), @@ -225,21 +232,6 @@ func NewPacketQueue(connection net.Conn) *PacketQueue { queue.mu.Unlock() } }() - go func(queueTimer *time.Ticker) { - for { - <-queueTimer.C - queue.mu.Lock() - for i, packet := range queue.Packets { - if time.Since(packet.Added) < time.Second*3 { - - queue.Packets = queue.Packets[i:] - packetQueue.Set(float64(len(queue.Packets))) - break - } - } - queue.mu.Unlock() - } - }(time.NewTicker(time.Second)) return queue }