From 26e08d57016352c469ae34b3fbd61e7f2a85a76c Mon Sep 17 00:00:00 2001 From: kprotty Date: Mon, 16 Dec 2019 11:51:40 -0600 Subject: [PATCH] ResetEvent: use futex on linux when possible --- lib/std/reset_event.zig | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/std/reset_event.zig b/lib/std/reset_event.zig index 5c50d0eb55..da26034e1a 100644 --- a/lib/std/reset_event.zig +++ b/lib/std/reset_event.zig @@ -14,10 +14,13 @@ const windows = os.windows; pub const ResetEvent = struct { os_event: OsEvent, - pub const OsEvent = if (builtin.single_threaded) DebugEvent else switch (builtin.os) { - .windows => AtomicEvent, - else => if (builtin.link_libc) PosixEvent else AtomicEvent, - }; + pub const OsEvent = + if (builtin.single_threaded) + DebugEvent + else if (builtin.link_libc and builtin.os != .windows and builtin.os != .linux) + PosixEvent + else + AtomicEvent; pub fn init() ResetEvent { return ResetEvent{ .os_event = OsEvent.init() };