demonstrate the benefit of the mutex

This commit is contained in:
MatthijsBlom
2026-04-18 23:46:59 +02:00
parent f35c9419d2
commit e0470c4f45

View File

@@ -52,6 +52,12 @@ fn increment(io: std.Io, state: *SharedState, times: u32) void {
state.mutex.??? catch return;
defer state.mutex.unlock(); // <-- what's missing here?
// Sleep to give the other tasks a chance to run in the meantime.
// We do this here only to make nondeterminism more visible.
io.sleep(std.Io.Duration.fromMilliseconds(1), .awake) catch {};
// What happens if you neglect to lock the mutex?
state.counter += 1;
}
}