| author | |
| committer | |
| log | b2e1bce2405cc4ff15d660f788db1aed35c890d5 |
| tree | 745c339ce5071e37a7706729c5cbde53c90dcf51 |
| parent | f2ab9512af0154a291ce11ab0a1298fbf778d751 |
2 files changed, 3 insertions(+), 2 deletions(-)
lib/std/reset_event.zig+2-1| ... | @@ -136,7 +136,8 @@ const PosixEvent = struct { | ... | @@ -136,7 +136,8 @@ const PosixEvent = struct { |
| 136 | } | 136 | } |
| 137 | 137 | ||
| 138 | fn set(self: *PosixEvent) void { | 138 | fn set(self: *PosixEvent) void { |
| 139 | assert(c.sem_post(self.getInitializedSem()) == 0); | 139 | const sem = self.getInitializedSem(); |
| 140 | assert(c.sem_post(sem) == 0); | ||
| 140 | } | 141 | } |
| 141 | 142 | ||
| 142 | fn wait(self: *PosixEvent) void { | 143 | fn wait(self: *PosixEvent) void { |
src/ThreadPool.zig+1-1| ... | @@ -105,12 +105,12 @@ fn runWorker(self: *ThreadPool) void { | ... | @@ -105,12 +105,12 @@ fn runWorker(self: *ThreadPool) void { |
| 105 | 105 | ||
| 106 | if (self.is_running) { | 106 | if (self.is_running) { |
| 107 | var idle_node = IdleQueue.Node{ .data = std.ResetEvent.init() }; | 107 | var idle_node = IdleQueue.Node{ .data = std.ResetEvent.init() }; |
| 108 | defer idle_node.data.deinit(); | ||
| 109 | 108 | ||
| 110 | self.idle_queue.prepend(&idle_node); | 109 | self.idle_queue.prepend(&idle_node); |
| 111 | held.release(); | 110 | held.release(); |
| 112 | 111 | ||
| 113 | idle_node.data.wait(); | 112 | idle_node.data.wait(); |
| 113 | idle_node.data.deinit(); | ||
| 114 | continue; | 114 | continue; |
| 115 | } | 115 | } |
| 116 | 116 |