+ // Unlink unix, windows cannot invoke `select` on arbitrary file
+ // descriptors like pipes, only sockets. Consequently, windows cannot
+ // use the same implementation as unix for accept() when close_accept()
+ // is considered.
+ //
+ // In order to implement close_accept() and timeouts, windows uses
+ // event handles. An acceptor-specific abort event is created which
+ // will only get set in close_accept(), and it will never be un-set.
+ // Additionally, another acceptor-specific event is associated with the
+ // FD_ACCEPT network event.
+ //
+ // These two events are then passed to WaitForMultipleEvents to see
+ // which one triggers first, and the timeout passed to this function is
+ // the local timeout for the acceptor.
+ //
+ // If the wait times out, then the accept timed out. If the wait
+ // succeeds with the abort event, then we were closed, and if the wait
+ // succeeds otherwise, then we do a nonblocking poll via `accept` to
+ // see if we can accept a connection. The connection is candidate to be
+ // stolen, so we do all of this in a loop as well.