优化下代码，测试发现监听有问题，原因待查。