Documentation
¶
Index ¶
- Variables
- func GetBatches(total, capacities int) uint
- type CoroutineGroup
- type CoroutineGroupImpl
- func (my *CoroutineGroupImpl[T]) GO(fn func(batch, capacity uint) (result ResultImpl[T])) CoroutineGroup[T]
- func (my *CoroutineGroupImpl[T]) GetResults() []ResultImpl[T]
- func (my *CoroutineGroupImpl[T]) New() CoroutineGroup[T]
- func (my *CoroutineGroupImpl[T]) SetBatches(batches uint) CoroutineGroup[T]
- func (my *CoroutineGroupImpl[T]) SetBatchesByCapacities(total, capacities int) CoroutineGroup[T]
- func (my *CoroutineGroupImpl[T]) SetCapacity(capacities uint) CoroutineGroup[T]
- type ResultImpl
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrBatchInvalid = errors.New("轮数不能为0") ErrCapacityInvalid = errors.New("每轮循环数不能为0") )
Functions ¶
Types ¶
type CoroutineGroup ¶
type CoroutineGroup[T any] interface { SetBatches(batches uint) CoroutineGroup[T] SetCapacity(capacities uint) CoroutineGroup[T] SetBatchesByCapacities(total, capacities int) CoroutineGroup[T] GetResults() []ResultImpl[T] GO(fn func(batch, capacity uint) (result ResultImpl[T])) CoroutineGroup[T] // contains filtered or unexported methods }
var ( CoroutineGroupV1 CoroutineGroup[any] = (*CoroutineGroupImpl[any])(nil) CoroutineGroupV2 coroutineGroupV2.CoroutineGroup[any] = (*coroutineGroupV2.CoroutineGroupImpl[any])(nil) )
func NewCoroutineGroup ¶
func NewCoroutineGroup[T any]() CoroutineGroup[T]
NewCoroutineGroup 创建协程组实例
type CoroutineGroupImpl ¶
type CoroutineGroupImpl[T any] struct { Error error OK bool Results []ResultImpl[T] // contains filtered or unexported fields }
func (*CoroutineGroupImpl[T]) GO ¶
func (my *CoroutineGroupImpl[T]) GO(fn func(batch, capacity uint) (result ResultImpl[T])) CoroutineGroup[T]
GO 执行协程组
func (*CoroutineGroupImpl[T]) GetResults ¶
func (my *CoroutineGroupImpl[T]) GetResults() []ResultImpl[T]
func (*CoroutineGroupImpl[T]) New ¶
func (my *CoroutineGroupImpl[T]) New() CoroutineGroup[T]
func (*CoroutineGroupImpl[T]) SetBatches ¶
func (my *CoroutineGroupImpl[T]) SetBatches(batches uint) CoroutineGroup[T]
SetBatches 设置批次数
func (*CoroutineGroupImpl[T]) SetBatchesByCapacities ¶
func (my *CoroutineGroupImpl[T]) SetBatchesByCapacities(total, capacities int) CoroutineGroup[T]
SetBatchesByCapacities 根据总数和每批次容量计算批次数并设置
func (*CoroutineGroupImpl[T]) SetCapacity ¶
func (my *CoroutineGroupImpl[T]) SetCapacity(capacities uint) CoroutineGroup[T]
SetCapacity 设置每批次容量
type ResultImpl ¶
Click to show internal directories.
Click to hide internal directories.