Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // RenderPages renders pages each corresponding to a markdown file
- func (s *Site) RenderPages() error {
- for _, page := range s.Pages {
- jww.FEEDBACK.Println("beginning of renderpages ", page.FullFilePath())
- }
- results := make(chan error)
- pages := make(chan *Page)
- procs := getGoMaxProcs()
- wg := &sync.WaitGroup{}
- for i := 0; i < procs*1; i++ {
- wg.Add(1)
- go pageRenderer(s, pages, results, wg)
- }
- errs := make(chan error)
- go errorCollator(results, errs)
- for _, page := range s.Pages {
- jww.FEEDBACK.Println("sending ", page.FullFilePath())
- pages <- page
- }
- close(pages)
- wg.Wait()
- close(results)
- err := <-errs
- if err != nil {
- return fmt.Errorf("Error(s) rendering pages: %s", err)
- }
- return nil
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement