This commit is contained in:
bluepython508 committed 2026-10-22 12:27:19 +01:00
1 parent 3530afb854
commit 6903fcff27
2146 files changed
+112256 -190703

No files matched your search

+17
View File
@@ -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))