From 7732cd7716236dcdf42b205d7983af6b12bba68b Mon Sep 17 00:00:00 2001 From: Chris Boesch Date: Wed, 10 Apr 2024 16:06:23 +0200 Subject: Greater gradation of timers built into the threads --- exercises/104_threading.zig | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'exercises') diff --git a/exercises/104_threading.zig b/exercises/104_threading.zig index 8aeb683..7865839 100644 --- a/exercises/104_threading.zig +++ b/exercises/104_threading.zig @@ -118,7 +118,11 @@ pub fn main() !void { // In our example, we pass the number of the thread as a parameter. fn thread_function(num: usize) !void { std.debug.print("thread {d}: {s}\n", .{ num, "started." }); - std.time.sleep((5 - num % 3) * std.time.ns_per_s); + + // This timer simulates the work of the thread. + const work_time = 2 * ((5 - num % 3) - 2); + std.time.sleep(work_time * std.time.ns_per_s); + std.debug.print("thread {d}: {s}\n", .{ num, "finished." }); } // This is the easiest way to run threads in parallel. -- cgit v1.2.3