使用多线程，修复少量bug