fix wait_time docs, tests for trigger deadline greater than or equal to wait deadline

Signed-off-by: redwrasse <mail@redwrasse.io>
This commit is contained in:
redwrasse 2024-07-27 21:41:40 +00:00
parent 9f59ef8ead
commit 5f782c350f
2 changed files with 4 additions and 4 deletions

View File

@ -19,9 +19,9 @@ import "sync"
type WaitTime interface { type WaitTime interface {
// Wait returns a chan that waits on the given logical deadline. // Wait returns a chan that waits on the given logical deadline.
// The chan will be triggered when Trigger is called with a // The chan will be triggered when Trigger is called with a
// deadline that is later than the one it is waiting for. // deadline that is later than or equal to the one it is waiting for.
Wait(deadline uint64) <-chan struct{} Wait(deadline uint64) <-chan struct{}
// Trigger triggers all the waiting chans with an earlier logical deadline. // Trigger triggers all the waiting chans with an equal or earlier logical deadline.
Trigger(deadline uint64) Trigger(deadline uint64)
} }

View File

@ -57,7 +57,7 @@ func TestWaitTestStress(t *testing.T) {
for i := 0; i < 10000; i++ { for i := 0; i < 10000; i++ {
chs = append(chs, wt.Wait(uint64(i))) chs = append(chs, wt.Wait(uint64(i)))
} }
wt.Trigger(10000 + 1) wt.Trigger(10000 - 1)
for _, ch := range chs { for _, ch := range chs {
select { select {
@ -81,6 +81,6 @@ func BenchmarkTriggerAnd10KWaitTime(b *testing.B) {
for j := 0; j < 10000; j++ { for j := 0; j < 10000; j++ {
wt.Wait(uint64(j)) wt.Wait(uint64(j))
} }
wt.Trigger(10000 + 1) wt.Trigger(10000 - 1)
} }
} }