mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-07-06 13:54:45 +08:00
Conflicts: Gopkg.lock pkg/appsrv/appsrv.go pkg/cloudcommon/options.go pkg/compute/models/hosts.go pkg/compute/models/quotas.go pkg/compute/service/service.go pkg/mcclient/mcclient.go
27 lines
368 B
Go
27 lines
368 B
Go
package missinggo
|
|
|
|
import "sync"
|
|
|
|
type SynchronizedEvent struct {
|
|
mu sync.Mutex
|
|
e Event
|
|
}
|
|
|
|
func (me *SynchronizedEvent) Set() {
|
|
me.mu.Lock()
|
|
me.e.Set()
|
|
me.mu.Unlock()
|
|
}
|
|
|
|
func (me *SynchronizedEvent) Clear() {
|
|
me.mu.Lock()
|
|
me.e.Clear()
|
|
me.mu.Unlock()
|
|
}
|
|
|
|
func (me *SynchronizedEvent) C() <-chan struct{} {
|
|
me.mu.Lock()
|
|
defer me.mu.Unlock()
|
|
return me.e.C()
|
|
}
|