Waits for a number of tasks, as many as were added and have not yet been done.
Io :: #import "Extensions/Io";
Io.io_run(() {
group: Io.Wait_Group;
for 1..3 {
Io.add(*group);
Io.spawn((group: *Io.Wait_Group) {
Io.sleep(1);
Io.done(group);
}, *group);
}
assert(Io.wait(*group) == .NONE); // returns once all three are done
});Fields
- count: s64
- waiters: Waiter