用__weak修饰之后的对象block不会再对其进行retain,只是持有了weak指针,但是在block执行的过程中,该对象随时又有可能被释放,将weak指针置为空,可能会产生一些意料之外的错误,所以要用__strong修饰一下对其进行retain。
只要在执行block的时候对象不为nil,在用__strong修饰之后的使用过程中都可以保证该指针不会指向nil。
用__weak修饰之后的对象block不会再对其进行retain,只是持有了weak指针,但是在block执行的过程中,该对象随时又有可能被释放,将weak指针置为空,可能会产生一些意料之外的错误,所以要用__strong修饰一下对其进行retain。
只要在执行block的时候对象不为nil,在用__strong修饰之后的使用过程中都可以保证该指针不会指向nil。
本文标题:为什么在block外部使用__weak修饰的同时需要在内部使用_
本文链接:https://www.haomeiwen.com/subject/zixbnhtx.html
网友评论