Documentation ¶
Index ¶
Constants ¶
View Source
const DefaultCleanPeriod = 5 * time.Second
DefaultCleanPeriod default time period for launching cleaning goroutine
View Source
const DefaultTTL = 5 * time.Second
DefaultTTL is default time period for deleting expired seeds
View Source
const SeedSize uint = 32
SeedSize is size of seed
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Seed ¶
Seed is a type of seed
func SeedFromBytes ¶
SeedFromBytes converts slice of bytes to Seed. Returns nil if slice's size is not equal to SeedSize
type SeedGenerator ¶
type SeedGenerator struct { }
SeedGenerator holds logic with seed generation
func (*SeedGenerator) Next ¶
func (sg *SeedGenerator) Next() (*Seed, error)
Next returns next random seed
type SeedManager ¶
type SeedManager struct {
// contains filtered or unexported fields
}
SeedManager manages working with seed pool It's thread safe
func NewSpecified ¶
func NewSpecified(ttl time.Duration, cleanPeriod time.Duration) *SeedManager
NewSpecified creates new seed manager with custom params
func (*SeedManager) Add ¶
func (sm *SeedManager) Add(seed Seed, pulse pulse.Number)
Add adds seed to pool
func (*SeedManager) Pop ¶
func (sm *SeedManager) Pop(seed Seed) (pulse.Number, bool)
Pop deletes and returns seed from the pool
func (*SeedManager) Stop ¶
func (sm *SeedManager) Stop()
Click to show internal directories.
Click to hide internal directories.