throttle

package module
v0.0.0-...-b0c26fe Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2023 License: MIT Imports: 4 Imported by: 0

README

throttle

Go Report Card

Ограничивает количество выполняемых заданий за единицу времени. Если добавить заданий больше установленного лимита, они будут добавлены в очередь и распределены по времени запуска, так чтобы не превысить лимит.

Использование

// Создаём дроссель с пропускной способностью 50 заданий в секунду
th := throttle.New(50, time.Second)

// Добавляем задания
th.Push(func() {
    // Какое-то очень полезное действие
})
...

// Запустит задания и дождётся завершения всех заданий в очереди
th.Run()

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(limit int64, period time.Duration) *throttle

New Вернёт инициализированный шлюз limit максимальное количество заданий обрабатываемых за period времени

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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