type T struct {
// contains filtered or unexported fields
}
T is the taskch type that manages collection of concurrent tasks. A task is
a function, executed as a goroutine, returning an error to indicate success
or failure.
Wait blocks until all the tasks to success or any of the tasks to fail. In
the latter case, one of the errors is returned. To ensure that all tasks to
finish, repeatedly call Wait until nil is returned.