Awaiting a set of handles with a timeout, part 4: Building our own awaiter To stop relying on unspecified behavior. Click here to read the article