Block被copy堆上的时机

不会被自动copy到堆的情况:
在ARC模式下,block作为函数的参数传递时不会被copy到堆上。但有两个例外,一是,方法名中含有usingBlock的Cocoa框架方法或GCD的API传递block时。

会被copy到堆上的情况:

  1. 调用Block的copy方法
  2. Block作为函数返回值
  3. 将Block赋值给__strong修饰符id类型的类或Block类型的成员变量时。
  4. 方法名中含有usingBlock的Cocoa框架方法或GCD的API传递block时。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容