waiting for multiple concurrent events