Update
This commit is contained in:
1 parent
3530afb854
commit
6903fcff27
2146 files changed
+112256
-190703
No files matched your search
+17
@@ -154,6 +154,15 @@ func (e *Entry) Init(eventListener EventListener, mask EventMask) {
|
||||
e.mask = mask
|
||||
}
|
||||
|
||||
// SetQueuedMask changes the entry mask.
|
||||
//
|
||||
// Preconditions: The Entry must be registered to the given Queue.
|
||||
func (e *Entry) SetQueuedMask(q *Queue, mask EventMask) {
|
||||
q.mu.Lock()
|
||||
e.mask = mask
|
||||
q.mu.Unlock()
|
||||
}
|
||||
|
||||
// Mask returns the entry mask.
|
||||
func (e *Entry) Mask() EventMask {
|
||||
return e.mask
|
||||
@@ -201,6 +210,14 @@ func NewFunctionEntry(mask EventMask, fn func(EventMask)) (e Entry) {
|
||||
return e
|
||||
}
|
||||
|
||||
// NoopListener is an EventListener that does nothing.
|
||||
//
|
||||
// +stateify savable
|
||||
type NoopListener struct{}
|
||||
|
||||
// NotifyEvent implements EventListener.NotifyEvent.
|
||||
func (NoopListener) NotifyEvent(mask EventMask) {}
|
||||
|
||||
// Queue represents the wait queue where waiters can be added and
|
||||
// notifiers can notify them when events happen.
|
||||
//
|
||||
|
||||
@@ -39,6 +39,27 @@ func (e *Entry) StateLoad(ctx context.Context, stateSourceObject state.Source) {
|
||||
stateSourceObject.Load(2, &e.mask)
|
||||
}
|
||||
|
||||
func (n *NoopListener) StateTypeName() string {
|
||||
return "pkg/waiter.NoopListener"
|
||||
}
|
||||
|
||||
func (n *NoopListener) StateFields() []string {
|
||||
return []string{}
|
||||
}
|
||||
|
||||
func (n *NoopListener) beforeSave() {}
|
||||
|
||||
// +checklocksignore
|
||||
func (n *NoopListener) StateSave(stateSinkObject state.Sink) {
|
||||
n.beforeSave()
|
||||
}
|
||||
|
||||
func (n *NoopListener) afterLoad(context.Context) {}
|
||||
|
||||
// +checklocksignore
|
||||
func (n *NoopListener) StateLoad(ctx context.Context, stateSourceObject state.Source) {
|
||||
}
|
||||
|
||||
func (q *Queue) StateTypeName() string {
|
||||
return "pkg/waiter.Queue"
|
||||
}
|
||||
@@ -122,6 +143,7 @@ func (e *waiterEntry) StateLoad(ctx context.Context, stateSourceObject state.Sou
|
||||
|
||||
func init() {
|
||||
state.Register((*Entry)(nil))
|
||||
state.Register((*NoopListener)(nil))
|
||||
state.Register((*Queue)(nil))
|
||||
state.Register((*waiterList)(nil))
|
||||
state.Register((*waiterEntry)(nil))
|
||||
|
||||
Reference in new issue
Block a user