try to use thread