use muti thread to enhance performance