Undocumented futex-like API available on darwin 16+ (macOS 10.12+, iOS 10.0+, tvOS 10.0+, watchOS 3.0+, catalyst 13.0+).
[ulock.h]: https://github.com/apple/darwin-xnu/blob/master/bsd/sys/ulock.h [sys_ulock.c]: https://github.com/apple/darwin-xnu/blob/master/bsd/kern/sys_ulock.c
op: OpWAKE_ALL: bool = falseWAKE_THREAD: bool = false_10: u6 = 0WAIT_WORKQ_DATA_CONTENTION: bool = falseWAIT_CANCEL_POINT: bool = falseWAIT_ADAPTIVE_SPIN: bool = false_19: u5 = 0NO_ERRNO: bool = false_: u7 = 0pub const UL = packed struct(u32) {
op: Op,
WAKE_ALL: bool = false,
WAKE_THREAD: bool = false,
_10: u6 = 0,
WAIT_WORKQ_DATA_CONTENTION: bool = false,
WAIT_CANCEL_POINT: bool = false,
WAIT_ADAPTIVE_SPIN: bool = false,
_19: u5 = 0,
NO_ERRNO: bool = false,
_: u7 = 0,
pub const Op = enum(u8) {
COMPARE_AND_WAIT = 1,
UNFAIR_LOCK = 2,
COMPARE_AND_WAIT_SHARED = 3,
UNFAIR_LOCK64_SHARED = 4,
COMPARE_AND_WAIT64 = 5,
COMPARE_AND_WAIT64_SHARED = 6,
};
}