凌乱了几天才发现,xcode中有个debug和release编译模式。...debug.jpeg
Debug和Release,主要是针对其面向的目标不同的而进行区分的。...Debug和Release和内存分配和释放方式是不同的,Debug模式下内存会延迟释放,weak的对象会延迟,但Release下进行了优化,所以达到释放条件会立即释放weak很重要,能解决循环引用的问题...,但使用时需要小心;
如果是weak属性,创建的对象没有变量引用而直接赋值,Release情况下会立即释放,Debug下会延迟释放,如果不知道这个问题,所以很难排查出原因。...YES:NO
//这个地方动态获取缓存地址,debug和release下会有不同
}
后面在构造函数中对这个bool值成员进行了初始化就好了。