| 12345678910111213141516171819202122232425262728 |
- package chansync
- import (
- "sync"
- "github.com/anacrolix/chansync/events"
- )
- type LevelTrigger struct {
- ch chan struct{}
- initOnce sync.Once
- }
- func (me *LevelTrigger) Signal() events.Signal {
- me.init()
- return me.ch
- }
- func (me *LevelTrigger) Active() events.Active {
- me.init()
- return me.ch
- }
- func (me *LevelTrigger) init() {
- me.initOnce.Do(func() {
- me.ch = make(chan struct{})
- })
- }
|