struct UL [src]
Alias for std.c.darwin.UL
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
Fields
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
Members
- Op (enum)
Source
pub 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,
};
}