forked from ALHP/ALHP.GO
added waitgroup
This commit is contained in:
6
main.go
6
main.go
@@ -327,12 +327,14 @@ func (b *BuildManager) refreshSRCINFOs(ctx context.Context, path string) error {
|
|||||||
|
|
||||||
step := int(float32(len(pkgBuilds)) / float32(runtime.NumCPU()))
|
step := int(float32(len(pkgBuilds)) / float32(runtime.NumCPU()))
|
||||||
cur := 0
|
cur := 0
|
||||||
|
wg := sync.WaitGroup{}
|
||||||
for i := 0; i < runtime.NumCPU(); i++ {
|
for i := 0; i < runtime.NumCPU(); i++ {
|
||||||
if cur+step > len(pkgBuilds) {
|
if cur+step > len(pkgBuilds) {
|
||||||
step -= cur + step - len(pkgBuilds)
|
step -= cur + step - len(pkgBuilds)
|
||||||
}
|
}
|
||||||
|
wg.Add(1)
|
||||||
go func(pkgBuilds []string) {
|
go func(pkgBuilds []string) {
|
||||||
|
defer wg.Done()
|
||||||
for _, pkgbuild := range pkgBuilds {
|
for _, pkgbuild := range pkgBuilds {
|
||||||
mPkgbuild := PKGBUILD(pkgbuild)
|
mPkgbuild := PKGBUILD(pkgbuild)
|
||||||
if mPkgbuild.FullRepo() == "trunk" || !Contains(conf.Repos, mPkgbuild.Repo()) || containsSubStr(mPkgbuild.FullRepo(), conf.Blacklist.Repo) {
|
if mPkgbuild.FullRepo() == "trunk" || !Contains(conf.Repos, mPkgbuild.Repo()) || containsSubStr(mPkgbuild.FullRepo(), conf.Blacklist.Repo) {
|
||||||
@@ -390,6 +392,8 @@ func (b *BuildManager) refreshSRCINFOs(ctx context.Context, path string) error {
|
|||||||
cur += step
|
cur += step
|
||||||
}
|
}
|
||||||
|
|
||||||
|
wg.Wait()
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user