From 0ec5a624383c598395c64a494d285d7bb09e1215 Mon Sep 17 00:00:00 2001 From: fantasticbin Date: Tue, 3 Dec 2024 11:19:18 +0800 Subject: [PATCH] =?UTF-8?q?Revert=20"=E5=A2=9E=E5=8A=A0=E5=BB=B6=E8=BF=9F?= =?UTF-8?q?=E6=97=A0=E9=94=81=E9=98=9F=E5=88=97=E5=88=9B=E5=BB=BA=E9=80=89?= =?UTF-8?q?=E9=A1=B9"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 75acf1f3dd478fe76407ef1ce63a5a1ce54e32c4. --- lock_free/delay_queue.go | 8 +++----- lock_free/delay_queue_test.go | 2 +- lock_free/options.go | 28 ---------------------------- 3 files changed, 4 insertions(+), 34 deletions(-) delete mode 100644 lock_free/options.go diff --git a/lock_free/delay_queue.go b/lock_free/delay_queue.go index 1927b1c..2531aee 100644 --- a/lock_free/delay_queue.go +++ b/lock_free/delay_queue.go @@ -3,14 +3,12 @@ package lock_free import "time" type DelayLkQueue[T any] struct { - gap time.Duration // 控制监听重试间隔 LkQueue[T] } // NewDelayLkQueue 创建延迟无锁队列 -func NewDelayLkQueue[T any](opt ...Option) *DelayLkQueue[T] { - opts := loadOptions(opt...) - return &DelayLkQueue[T]{opts.gap, *NewLkQueue[T]()} +func NewDelayLkQueue[T any]() *DelayLkQueue[T] { + return &DelayLkQueue[T]{*NewLkQueue[T]()} } // DelayEnqueue 延迟入队 @@ -28,7 +26,7 @@ func (q *DelayLkQueue[T]) ContinuousDequeue(notify ...chan T) { n <- value } } else { - time.Sleep(q.gap) // 队列为空,休眠重试 + time.Sleep(time.Millisecond) // 队列为空,休眠1毫秒 } } } diff --git a/lock_free/delay_queue_test.go b/lock_free/delay_queue_test.go index 85a361b..0bce92e 100644 --- a/lock_free/delay_queue_test.go +++ b/lock_free/delay_queue_test.go @@ -13,7 +13,7 @@ func TestDelayLkQueue(t *testing.T) { {1, time.Second}, {3, time.Second * 3}, } - q := NewDelayLkQueue[int](WithGap(time.Millisecond * 100)) + q := NewDelayLkQueue[int]() for _, c := range cases { q.DelayEnqueue(c.value, c.duration) diff --git a/lock_free/options.go b/lock_free/options.go deleted file mode 100644 index 6c8d9b1..0000000 --- a/lock_free/options.go +++ /dev/null @@ -1,28 +0,0 @@ -package lock_free - -import "time" - -// Options 无锁队列选项 -type Options struct { - gap time.Duration -} - -type Option func(*Options) - -func loadOptions(opt ...Option) Options { - opts := Options{ - gap: time.Millisecond, - } - - for _, o := range opt { - o(&opts) - } - - return opts -} - -func WithGap(gap time.Duration) Option { - return func(o *Options) { - o.gap = gap - } -}