threaded data receive done