@strongify以及@weakify宏命令的的使用(1)

原创 2016年06月01日 15:00:09
主要是在block中使用

因为block一般都在对象内部声明.. 如果在block内部使用了当前对象的属性,就会造成循环引用(block拥有当前对象的地址,而当前对象拥有block的地址),而引起内存泄露,block和当前对象都无法释放.

@weakify 将当前对象声明为weak.. 这样block内部引用当前对象,就不会造成引用计数+1可以破解循环引用

@strongify 相当于声明一个局部的strong对象,等于当前对象.可以保证block调用的时候,内部的对象不会释放

大概相当于


那么问题来了,到底什么时候才需要在ObjC的Block中使用weakSelf/strongSelf

看我的第二篇文章:

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

文MRC/ARC通用的weakify和strongify

/** * 强弱引用转换,用于解决代码块(block)与强引用self之间的循环引用问题 * 调用方式: `@weakify_self`实现弱引用转换,`@strongify_self`实现强引用转换...

@weakify和@strongify

提到OC中的block,它像函数指针,当然了,我们知道OC其实都是结构体,所以也就是结构体指针了,我们暂不讨论LLVM的Clang前端是如何转换OC代码的。 一般来说,引入ARC后,出现内存...

Reactive Cocoa中@weakify和@strongify实现分析

使用rac的都知道@weakify和@strongify是在它扩库libextobjc中的一个宏,通过他可以实现__weak和__strong的效果,那它使怎么实现的呢。打开xcode找到produc...

PReprocessor Macros : 全局宏命令的应用

全局宏命令的应用应用场景:1、根据是真机还是模拟器来指定宏的不同定义;2、设置不同的宏,实现不同Target版本的判断。

wow中的宏命令大全

  • 2010-01-28 14:10
  • 358KB
  • 下载

设计模式 - 命令模式(command pattern) 宏命令(macro command) 详解

命令模式(command pattern) 宏命令(macro command) 详解本文地址: http://blog.csdn.net/caroline_wendy参考: 命名模式(撤销): ht...

PPT自动排版宏命令

iOS常用宏命令大全

iOS宏命令大全

Office宏命令Demo

内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)