···2323// }
2424// sel.cancelDiscard(); // cancel remaining, discard results
2525//
2626+// As with all async primitives: tasks spawned in a Select MUST
2727+// be cleaned up. Use sel.cancel() to get remaining results one
2828+// by one (for resource cleanup), or sel.cancelDiscard() if you
2929+// don't need them.
3030+//
2631// The buffer must be large enough for all tasks that might
2732// complete before you call cancelDiscard().
2833//
···47524853 // Wait for the first finisher.
4954 // What Select method returns the first completed result?
5050- const winner = ???;
5555+ const winner = try sel.???();
51565257 switch (winner) {
5358 .hare => |msg| print("Hare: {s}\n", .{msg}),