use the polling function if specified
update the select-based impl.