微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我是否必须在iOS的Objective-C中保留块?

如何解决我是否必须在iOS的Objective-C中保留块?

| 我想创建一个方法,该方法接受一个块,将其保存在成员中,启动一个异步任务,然后在异步调用进行其完成回调时调用该块。 我是否必须保留街区?块内存的管理方式是否与其他任何对象相同?我可以合成一个属性来保存块吗?     

解决方法

块与用于内存管理的其他对象相似,但不相同。创建访问局部变量的块时,将在堆栈上创建它。这意味着它只有在其范围存在的情况下才有效。要保存此块供以后使用,您必须将其“ 0”,然后将其复制到堆中。因此,为了防止此类块出现问题,在将其存储到实例变量中之前,应复制而不保留其块。     ,是的,您必须复制该块。块是常规的Objective-C对象。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。