aboutsummaryrefslogtreecommitdiff
path: root/src/WaitGroup.zig
diff options
context:
space:
mode:
authorJakub Konka <kubkon@jakubkonka.com>2022-06-20 00:26:39 +0200
committerGitHub <noreply@github.com>2022-06-20 00:26:39 +0200
commit74442f35030a9c4f4ff65db01a18e8fb2f2a1ecf (patch)
tree0a3417d662326ce757cc8d89ca7e19498ead9207 /src/WaitGroup.zig
parent33cf6ef621114daad63d14067b6ff374e664d410 (diff)
parent1d4dbf8d3c891346e6dc978764e8bce9c85ad044 (diff)
downloadzig-74442f35030a9c4f4ff65db01a18e8fb2f2a1ecf.tar.gz
zig-74442f35030a9c4f4ff65db01a18e8fb2f2a1ecf.zip
Merge pull request #11847 from ziglang/better-libcompiler_rt
Diffstat (limited to 'src/WaitGroup.zig')
-rw-r--r--src/WaitGroup.zig7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/WaitGroup.zig b/src/WaitGroup.zig
index 860d0a8b4c..c8be6658db 100644
--- a/src/WaitGroup.zig
+++ b/src/WaitGroup.zig
@@ -37,3 +37,10 @@ pub fn reset(self: *WaitGroup) void {
self.state.store(0, .Monotonic);
self.event.reset();
}
+
+pub fn isDone(wg: *WaitGroup) bool {
+ const state = wg.state.load(.Acquire);
+ assert(state & is_waiting == 0);
+
+ return (state / one_pending) == 0;
+}