系统对block对象和其他对象的内存管理方式不同,block对象是在栈中创建的,而其他对象是在堆中创建的。这意味着,即使应用针对新创建的block对象保留了强引用类型的指针,一旦创建该对象的方法返回,新创建的block对象也会被立即释放。为了在声明block对象的方法返回后仍然保留该对象,必须向其发送copy
消息。拷贝某个block对象时,应用会在堆中创建该对象的备份。
block对象应被声明为copy的原因
最新推荐文章于 2024-09-18 21:28:36 发布
系统对block对象和其他对象的内存管理方式不同,block对象是在栈中创建的,而其他对象是在堆中创建的。这意味着,即使应用针对新创建的block对象保留了强引用类型的指针,一旦创建该对象的方法返回,新创建的block对象也会被立即释放。为了在声明block对象的方法返回后仍然保留该对象,必须向其发送copy
消息。拷贝某个block对象时,应用会在堆中创建该对象的备份。