在for循环中, 大量创建相同的临时变量的问题

在for循环中, 大量创建相同的临时变量的问题

  • 在for循环中创建临时变量, 由于变量只有离开作用域的时候才会被释放, 所以会导致变量反复创建内存暴增

  • 而正确的做法就是添加一个自动释放池, 变量使用结束后立刻释放, 避免内存开销

      int someLargeNumber = 10000;
      for (int i = 0; i < someLargeNumber; i++) {
    
          @autoreleasepool {
          
          NSString *string = @"Abc";
    
          string = [string lowercaseString];
          string = [string stringByAppendingString:@"xyz"];
          
          NSLog(@"%@, %p", string, string);
          }
      }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.OC里用到集合类是什么? 基本类型为:NSArray,NSSet以及NSDictionary 可变类型为:NS...
    轻皱眉头浅忧思阅读 5,229评论 0 3
  • 内存管理ARC处理原理ARC是Objective-C编译器的特性,而不是运行时特性或者垃圾回收机制,ARC所做的只...
    阳明AI阅读 2,854评论 0 3
  • 内存管理ARC处理原理ARC是Objective-C编译器的特性,而不是运行时特性或者垃圾回收机制,ARC所做的只...
    阳明AI阅读 3,321评论 1 3
  • SwiftDay011.MySwiftimport UIKitprintln("Hello Swift!")var...
    smile丽语阅读 9,272评论 0 6
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 7,988评论 2 9