On Linux with the above ifdef you're using the real usleep anyway. I don't see the point of keeping around the code with the select call at all - in fact, I think select will complain that you didn't pass it any socket IDs, will it not?