Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client interface {
contract.SemaphoreOperator
}
func NewClient ¶
func NewClient(opts ClientOptions) Client
type ClientOption ¶ added in v0.1.6
type ClientOption func(*ClientOptions)
func WithConcurrency ¶
func WithConcurrency(x int) ClientOption
type ClientOptions ¶ added in v0.1.6
type ClientOptions struct {
Concurrency int
}
func ApplyClientOptions ¶ added in v0.1.9
func ApplyClientOptions(opts *ClientOptions, modifiers ...ClientOption) ClientOptions
type DefaultTool ¶ added in v0.1.11
func NewTool ¶
func NewTool(c Client, opts contract.ToolOptions[Client]) *DefaultTool
func (*DefaultTool) Acquire ¶ added in v0.1.11
func (d *DefaultTool) Acquire(ctx context.Context) error
Acquire reserves a slot in the semaphore, ensuring controlled concurrency.
func (*DefaultTool) GetConcurrency ¶ added in v0.1.246
func (d *DefaultTool) GetConcurrency(ctx context.Context) (int, error)
GetConcurrency returns the configured concurrency limit.
Click to show internal directories.
Click to hide internal directories.