do recv with {active, once}