try to ensure trie prefetcher finishes

This commit is contained in:
Jared Wasinger 2023-12-13 22:55:07 +08:00
parent 9a158dd749
commit 398ea0a982

View file

@ -292,10 +292,6 @@ func (sf *subfetcher) loop() {
tasks := sf.tasks tasks := sf.tasks
sf.tasks = nil sf.tasks = nil
sf.lock.Unlock() sf.lock.Unlock()
if tasks == nil && !keepRunning {
// No more tasks
return
}
// Prefetch all tasks // Prefetch all tasks
for _, task := range tasks { for _, task := range tasks {
if _, ok := sf.seen[string(task)]; ok { if _, ok := sf.seen[string(task)]; ok {
@ -309,5 +305,9 @@ func (sf *subfetcher) loop() {
} }
sf.seen[string(task)] = struct{}{} sf.seen[string(task)] = struct{}{}
} }
if !keepRunning {
return
}
} }
} }