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

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, }; }