fix(scanner): spawn interval scans in a goroutine
this way, if the average scan takes longer than the tick interval, the ticker will be unblocked and scans won't stack on top of each other related #63
This commit is contained in:
@@ -271,9 +271,11 @@ func (s *Server) StartScanTicker(dur time.Duration) (FuncExecute, FuncInterrupt)
|
|||||||
case <-done:
|
case <-done:
|
||||||
return nil
|
return nil
|
||||||
case <-ticker.C:
|
case <-ticker.C:
|
||||||
if err := s.scanner.Start(scanner.ScanOptions{}); err != nil {
|
go func() {
|
||||||
log.Printf("error scanning: %v", err)
|
if err := s.scanner.Start(scanner.ScanOptions{}); err != nil {
|
||||||
}
|
log.Printf("error scanning: %v", err)
|
||||||
|
}
|
||||||
|
}()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user