block都有哪些类型
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了block都有哪些类型相关的知识,希望对你有一定的参考价值。
参考技术A block的类型block如何分类?其实blcok的分类主要是根据block的内存管理来说的,系统把Block分为3类:NSGlobalBlock,NSStackBlock, NSMallocBlock;
NSGlobalBlock :位于内存全局区
NSMallocBlock :位于内存堆区
NSStackBlock :位于内存栈区
内存五大区
栈区,堆区,静态区(全局区),常量区,代码区
动态数据区一般就是”堆栈”,栈是线性结构,堆是链式结构. 本地变量在堆栈中.通过堆栈的基地址和偏移量来访问本地变量
动态内存分配有系统根据程序需要即时分配,且分配的大小就是程序要求的大小.
全局变量(一般用static修饰的变量)和静态变量分配在静态区(需要预先分配存储空间)
静态内存分配:分配固定大小的内存分配方法,大多情况下会浪费大量的内存空间,少数情况下,当定义的数组不够大时,会引起越界.
以上是关于block都有哪些类型的主要内容,如果未能解决你的问题,请参考以下文章