// Copyright 2023 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package event // SchedReqs is a set of constraints on what the scheduling // context must look like. type SchedReqs struct { Thread Constraint Proc Constraint Goroutine Constraint } // Constraint represents a various presence requirements. type Constraint uint8 const ( MustNotHave Constraint = iota MayHave MustHave ) // UserGoReqs is a common requirement among events that are running // or are close to running user code. var UserGoReqs = SchedReqs{Thread: MustHave, Proc: MustHave, Goroutine: MustHave}