美文网首页
block底层浅谈

block底层浅谈

作者: 0fbf551ff6fb | 来源:发表于2018-05-18 11:08 被阅读0次

函数指针是指向函数的指针变量。

C++里面的结构体相当于OC里面的类  类就有变量和方法

C++里面跟类名一样的方法是构造方法  构造方法是用来初始化当前方法的

blcok底层实现

首先会创建一个结构体   _main_block_impl_0

blcok变量 是函数指针 -> void(^blcokName)()  

block块对象 才是一个结构体 是有大量存储空间的

block块对象是结构体  结构体里面有自己的构造方法 来创建自己 构造方法里面需要传入4个参数

void *fp   保存一段函数 将来要执行的那个代码块

_main_block_desc_0 *desc  描述自己大小的一个结构体

 int _a  保存之前传递进去的变量(blcok)内部使用外部变量  只穿block内部用到的变量

int flags 仅仅是个标记

函数调用 其实就是找到fp记录的代码块,再传入block本身,在代码块中就能访问到block里面记录的变量_a的值。

相关文章

  • block底层浅谈

    函数指针是指向函数的指针变量。 C++里面的结构体相当于OC里面的类 类就有变量和方法 C++里面跟类名一样的方法...

  • Block探索

    Block内存关系Block经典问题循环引用&解决Block底层分析Block底层HooK 程序占用内存分类 栈区...

  • Block底层分析

    Block内存关系Block经典问题循环引用&解决Block底层分析Block底层HooK 1. 研究工具:cla...

  • Block底层原理分析

    iOSBlock底层原理解析 目录 Block底层解析什么是block?block编译转换结构block实际结构b...

  • block分析(下)

    block通过clang分析 带着下面的疑问,我们去探索block原理 探索block底层源码 block在底层是...

  • Block底层hook

    Block内存关系Block经典问题循环引用&解决Block底层分析Block底层HooK 前言 如何反编译出微信...

  • Block经典问题循环引用&解决

    Block内存关系Block经典问题循环引用&解决Block底层分析Block底层HooK 1.循环引用怎么产生的...

  • 06-OC中block的底层原理

    06-block的本质 在讲解block的底层原理前,我们先抛出如下block相关的问题: block的本质,底层...

  • ios中Block的深入学习-1

    浅谈block,类中带有Block参数的方法和Block的setting方法的先后顺序和区别 block创建后都在...

  • iOS底层原理总结 - 探寻block的本质(一)

    iOS底层原理总结 - 探寻block的本质(一) iOS底层原理总结 - 探寻block的本质(一)

网友评论

      本文标题:block底层浅谈

      本文链接:https://www.haomeiwen.com/subject/vffbdftx.html