batch

package
v1.5.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 30, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BatchItem

type BatchItem struct {
	ID      string
	Data    any
	Error   error
	Success bool
}

BatchItem represents a single item in a batch

type BatchProcessor

type BatchProcessor struct {
	// contains filtered or unexported fields
}

BatchProcessor handles batch processing operations

func NewBatchProcessor

func NewBatchProcessor(config Config, processor func([]BatchItem) []BatchItem) *BatchProcessor

NewBatchProcessor creates a new batch processor

func (*BatchProcessor) Add

func (b *BatchProcessor) Add(item BatchItem)

Add adds a new item to be processed

func (*BatchProcessor) Start

func (b *BatchProcessor) Start()

Start begins processing batches

func (*BatchProcessor) Stop

func (b *BatchProcessor) Stop()

Stop gracefully shuts down the batch processor

type Config

type Config struct {
	BatchSize     int
	FlushTimeout  time.Duration
	MaxConcurrent int
	MaxRetries    int
	RetryDelay    time.Duration
}

Config represents batch processor configuration

func DefaultConfig

func DefaultConfig() Config

DefaultConfig returns default configuration

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL