use another thread to process request