added ability to use thread based receiver implementation