refactor(concurrency): replaced manual WaitGroup management with new wg.Go() and removed redundant code.

This commit is contained in:
yusing
2025-08-16 23:14:40 +08:00
parent 7a9b8b3fb9
commit 11af9d107a
8 changed files with 35 additions and 59 deletions

View File

@@ -79,39 +79,29 @@ func getSystemInfo(ctx context.Context, lastResult *SystemInfo) (*SystemInfo, er
var wg sync.WaitGroup
if !common.MetricsDisableCPU {
wg.Add(1)
go func() {
defer wg.Done()
wg.Go(func() {
errs.Add(s.collectCPUInfo(ctx))
}()
})
}
if !common.MetricsDisableMemory {
wg.Add(1)
go func() {
defer wg.Done()
wg.Go(func() {
errs.Add(s.collectMemoryInfo(ctx))
}()
})
}
if !common.MetricsDisableDisk {
wg.Add(1)
go func() {
defer wg.Done()
wg.Go(func() {
errs.Add(s.collectDisksInfo(ctx, lastResult))
}()
})
}
if !common.MetricsDisableNetwork {
wg.Add(1)
go func() {
defer wg.Done()
wg.Go(func() {
errs.Add(s.collectNetworkInfo(ctx, lastResult))
}()
})
}
if !common.MetricsDisableSensors {
wg.Add(1)
go func() {
defer wg.Done()
wg.Go(func() {
errs.Add(s.collectSensorsInfo(ctx))
}()
})
}
wg.Wait()