一些细节的修改，例如不是new handler，而是getInstance