The errgroup package is a replacement of the standard sync.WaitGroup package.

	g := new(errgroup.Group)
	g.SetLimit(int(someVar))
 
	for i := 0; i < int(someVar); i++ {
		g.Go(func() error {
			// Processing here
			return nil
		})
	}
	
	if err := g.Wait(); err != nil {
		return err;
	}
	
	// Continue