Refactor periodicallySendMonitoringData

in order to return directly when the context is done and not just at the next iteration.
This commit is contained in:
Maximilian Paß
2023-09-04 10:44:33 +02:00
parent a01bd0fa7e
commit b28b87d56f
2 changed files with 13 additions and 7 deletions

View File

@@ -173,9 +173,13 @@ func (s *localStorage[T]) sendMonitoringData(id string, o T, eventType EventType
}
func (s *localStorage[T]) periodicallySendMonitoringData(d time.Duration, ctx context.Context) {
for ctx.Err() == nil {
stub := new(T)
s.sendMonitoringData("", *stub, Periodically, s.Length())
<-time.After(d)
for {
select {
case <-ctx.Done():
return
case <-time.After(d):
stub := new(T)
s.sendMonitoringData("", *stub, Periodically, s.Length())
}
}
}