美文网首页
NSString 内存管理

NSString 内存管理

作者: 1剑天下 | 来源:发表于2019-06-04 15:26 被阅读0次

在学习自动释放池与RunLoop的关系的时候发现申明NSString类型的变量未随RunLoop的进入休眠而释放,通过查看资料以及代码验证解除了心中疑惑

  NSString *str =@"str";
   NSString *str1 =@"str111111111";
 NSString * str2 = [NSString stringWithString:@"sa"];
 NSString * str3 = [NSString stringWithString:@"sa777777777777"];
 NSString *str4= [[NSString alloc] initWithString:@"123"];
 NSString *str5 = [[NSString alloc] initWithString:@"123dertyuiuyt"];

str ...5 打印的类型都为NSCFConstantString 都存放在常量区 由程序控制释放,在程序结束的时候释放

image.png
    NSString *str6 = [NSString stringWithFormat:@"sunnyxx"];
     NSString *str7 = [NSString stringWithFormat:@"sunnyxx3333333"];
     NSString *str8 = [[NSString alloc] initWithFormat:@"wxwe"];
     NSString *str9 = [[NSString alloc] initWithFormat:@"wxwe444444444"];

str6....9 大于9位时类型__NSCFString 小于9时为NSTaggedPointerString __NSCFString类型ARC下通过release和自动释放池来释放 aggedPointerString 它的作用就是:节省短的变量的内存。用指针地址的富余位存变量值。 NSTaggedPointerString:phone 5s的时候,为了节省内存和提高执行效率,苹果提出了Tagged Pointer的概念 这个地址本身其实就存储了字符串的值 可以说是存储在&strS内存中值,只是伪装成了地址,它不需要存储在数据区,也不需要申请堆空间。

image.png image.png
NSString存储管理--NSTaggedPointerString
iOS 开发之关于__weak修饰NSString以及内存管理的问题(https://blog.csdn.net/shifang07/article/details/54409763)

相关文章

  • iOS内存管理详解

    目录 block内存管理 autorelease内存管理 weak对象内存管理 NSString内存管理 new、...

  • NSString内存管理

    NSString的内存优化 OC中的NSString不论是在编译时还是在运行时都做了很多的优化,并不同于普通的对象...

  • NSString 内存管理

    在学习自动释放池与RunLoop的关系的时候发现申明NSString类型的变量未随RunLoop的进入休眠而释放,...

  • Foundation框架---NSString

    //创建字符串的方式 NSString*str3 =@"iOS";//系统会对内存自动做管理 NSString *...

  • [8]NSString内存管理

    NSSting内存 栈区(stack): 这个一般由编译器操作,或者说是系统管理,会存一些局部变量,函数跳转跳转时...

  • iOS NSString 内存管理

    iOS中,NSString对象相对其他OC对象的内存管理是复杂的。按照产生对象的isa,大致可以分为三种情况,如下...

  • NSString 的内存管理

    前段时间看了同事的分享,于是把它记录下来 先看下这几个测试代码,关于 NSString: 执行后打印输出结果: 可...

  • iOS strong和copy的区别

    在iOS开发中,几乎每天都会遇到NSString属性的声明, 在ARC内存管理机制下, NSString属性声明有...

  • Ios面试复习--NSString的内存管理

    1.NSString类的内存管理 2.NSString 类型的属性 的@property修饰符号 参考文章第6部分...

  • iOS基础:内存管理-NSString相关知识

    前言 本文主要讲的是NSString类有关的内存管理基础知识。 正文 一、面试常问的问题:为什么NSString的...

网友评论

      本文标题:NSString 内存管理

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