精选优质文档-倾情为你奉上weak的生命周期weak的生命周期我们都知道weak表示的是一个弱引用,这个引用不会增加对象的引用计数,并且在所指向的对象被释放之后,weak指针会被设置的为nil。weak引用通常是用于处理循环引用的问题,如代理及block的使用中,相对会较多的使用到weak。之前对weak的实现略有了解,知道它的一个基本的生命周期,但具体是怎么实现的,了解得不是太清晰。今天又翻了翻Objective-C高级编程关于_weak的讲解,在此做个笔记。我们以下面这行代码为例:代码清单1:示例代码1. 2. id_weakobj1=obj;3. 当我们初始化一个weak变量时,runtime会调用objc_initWeak函数。这个函数在Clang中的声明如下:1. idobjc_initWeak(id*object,idvalue);其具体实现如下:1. idobjc_initWeak(id*object,idvalue)2. 3. *object=0;