没有多线程,实现基本功能