Documentation
¶
Index ¶
- Constants
- type AdvancedWaitGroup
- func (wg *AdvancedWaitGroup) Add(f ...WaitgroupFunc) *AdvancedWaitGroup
- func (wg *AdvancedWaitGroup) AddSlice(s []WaitgroupFunc) *AdvancedWaitGroup
- func (wg *AdvancedWaitGroup) CheckStatus(status int) bool
- func (wg *AdvancedWaitGroup) GetAllErrors() []error
- func (wg *AdvancedWaitGroup) GetCapacity() int
- func (wg *AdvancedWaitGroup) GetLastError() error
- func (wg *AdvancedWaitGroup) Reset()
- func (wg *AdvancedWaitGroup) SetCapacity(c int) *AdvancedWaitGroup
- func (wg *AdvancedWaitGroup) SetStopOnError(b bool) *AdvancedWaitGroup
- func (wg *AdvancedWaitGroup) SetTimeout(t time.Duration) *AdvancedWaitGroup
- func (wg *AdvancedWaitGroup) Start() *AdvancedWaitGroup
- func (wg *AdvancedWaitGroup) Status() int
- func (wg *AdvancedWaitGroup) WithContext(ctx context.Context) *AdvancedWaitGroup
- type ErrorTimeout
- type WaitgroupFunc
Constants ¶
const ( // StatusIdle means that WG did not run yet StatusIdle int = iota // StatusSuccess means successful execution of all tasks StatusSuccess // StatusTimeout means that job was broken by timeout StatusTimeout // StatusError means that job was broken by error in one task (if stopOnError is true) StatusError )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AdvancedWaitGroup ¶
type AdvancedWaitGroup struct {
// contains filtered or unexported fields
}
AdvancedWaitGroup enhanced wait group struct
func (*AdvancedWaitGroup) Add ¶
func (wg *AdvancedWaitGroup) Add(f ...WaitgroupFunc) *AdvancedWaitGroup
Add adds new task in waitgroup
func (*AdvancedWaitGroup) AddSlice ¶
func (wg *AdvancedWaitGroup) AddSlice(s []WaitgroupFunc) *AdvancedWaitGroup
AddSlice adds new tasks in waitgroup
func (*AdvancedWaitGroup) CheckStatus ¶
func (wg *AdvancedWaitGroup) CheckStatus(status int) bool
CheckStatus return result of status compare
func (*AdvancedWaitGroup) GetAllErrors ¶
func (wg *AdvancedWaitGroup) GetAllErrors() []error
GetAllErrors returns all errors that caught by execution process
func (*AdvancedWaitGroup) GetCapacity ¶
func (wg *AdvancedWaitGroup) GetCapacity() int
GetCapacity defines tasks channel capacity
func (*AdvancedWaitGroup) GetLastError ¶
func (wg *AdvancedWaitGroup) GetLastError() error
GetLastError returns last error that caught by execution process
func (*AdvancedWaitGroup) Reset ¶
func (wg *AdvancedWaitGroup) Reset()
Reset performs cleanup task queue and reset state
func (*AdvancedWaitGroup) SetCapacity ¶
func (wg *AdvancedWaitGroup) SetCapacity(c int) *AdvancedWaitGroup
SetCapacity defines tasks channel capacity
func (*AdvancedWaitGroup) SetStopOnError ¶
func (wg *AdvancedWaitGroup) SetStopOnError(b bool) *AdvancedWaitGroup
SetStopOnError make wiatgroup stops if any task returns error
func (*AdvancedWaitGroup) SetTimeout ¶
func (wg *AdvancedWaitGroup) SetTimeout(t time.Duration) *AdvancedWaitGroup
SetTimeout defines timeout for all tasks
func (*AdvancedWaitGroup) Start ¶
func (wg *AdvancedWaitGroup) Start() *AdvancedWaitGroup
Start runs tasks in separate goroutines
func (*AdvancedWaitGroup) Status ¶
func (wg *AdvancedWaitGroup) Status() int
Status return result state string
func (*AdvancedWaitGroup) WithContext ¶
func (wg *AdvancedWaitGroup) WithContext(ctx context.Context) *AdvancedWaitGroup
WithContext make wiatgroup work with context timeout and Done
type ErrorTimeout ¶
ErrorTimeout error on timeout