commit 13972d6c833f7837e8a04b1931e25e6fcc2e10c8
parent 91968f3b1fad64a5cae53e18113e50ea50e14bbd
Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date: Tue, 21 Feb 2017 18:56:56 +0100
hugolib: Cleanup the Goroutine count calculation
Diffstat:
3 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/hugolib/hugo_sites.go b/hugolib/hugo_sites.go
@@ -484,8 +484,9 @@ func (h *HugoSites) setupTranslations() {
func (s *Site) preparePagesForRender(cfg *BuildCfg) {
pageChan := make(chan *Page)
wg := &sync.WaitGroup{}
+ numWorkers := getGoMaxProcs() * 4
- for i := 0; i < getGoMaxProcs()*4; i++ {
+ for i := 0; i < numWorkers; i++ {
wg.Add(1)
go func(pages <-chan *Page, wg *sync.WaitGroup) {
defer wg.Done()
diff --git a/hugolib/site.go b/hugolib/site.go
@@ -1150,11 +1150,10 @@ func (s *Site) readPagesFromSource() chan error {
files := s.Source.Files()
results := make(chan HandledResult)
filechan := make(chan *source.File)
- procs := getGoMaxProcs()
wg := &sync.WaitGroup{}
-
- wg.Add(procs * 4)
- for i := 0; i < procs*4; i++ {
+ numWorkers := getGoMaxProcs() * 4
+ wg.Add(numWorkers)
+ for i := 0; i < numWorkers; i++ {
go sourceReader(s, filechan, results, wg)
}
@@ -1178,11 +1177,11 @@ func (s *Site) convertSource() chan error {
results := make(chan HandledResult)
pageChan := make(chan *Page)
fileConvChan := make(chan *source.File)
- procs := getGoMaxProcs()
+ numWorkers := getGoMaxProcs() * 4
wg := &sync.WaitGroup{}
- wg.Add(2 * procs * 4)
- for i := 0; i < procs*4; i++ {
+ for i := 0; i < numWorkers; i++ {
+ wg.Add(2)
go fileConverter(s, fileConvChan, results, wg)
go pageConverter(pageChan, results, wg)
}
diff --git a/hugolib/site_render.go b/hugolib/site_render.go
@@ -33,11 +33,11 @@ func (s *Site) renderPages() error {
go errorCollator(results, errs)
- procs := getGoMaxProcs()
+ numWorkers := getGoMaxProcs() * 4
wg := &sync.WaitGroup{}
- for i := 0; i < procs*4; i++ {
+ for i := 0; i < numWorkers; i++ {
wg.Add(1)
go pageRenderer(s, pages, results, wg)
}