修改单例控制层逻辑