
ios 内存管理
文章平均质量分 68
@福者
曾研究银行技术部,奇虎360,字节跳动......等工作。研究技术已经是生活中不可缺少快乐,
展开
-
Xcode清理缓存-2023年3月
DevCleaner Mac版可以让你检查自动生成的文件,并在必要时进行清理。DevCleaner Mac版也可以提醒你一段时间后扫描缓存空间,清除缓存,找回多余的空间。c. iOS DeviceSupport 存放的是模拟器,对于你不需要的一些模拟器你可以删掉。即使不小心删掉了,也是可以重新下载的。b. DerivedData 存放的是build生成的项目索引、build输出以及日志,这里的文件可以全部删除。a. Archives 存放的是Xcode打包时生成的文件,这里面的文件可以全部删掉。原创 2023-03-13 20:01:06 · 4928 阅读 · 0 评论 -
C++ 面试题~Windows内存管理的方法
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、虚拟内存的概念 当程序运行时需要从内存中读出这段程序的代码。代码的位置必须在物理内存中才能被运行,由于现在的操作系统中有非常多的程序运行着,内存中不能够完全放下,所以引出了虚拟内存的概念。把哪些不常用的程序片断就放入虚拟内存,当需要用到它的时候在load入主存(物理内存)中。这个就是内存管理所要原创 2018-02-07 10:16:41 · 607 阅读 · 0 评论 -
iOS 模拟内存优化
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念 low-memory 处理思路 通常一个应用程序会包含多个view controllers,当从view跳转到另一个view时,之前的view只是不可见状态,并不会立即被清理掉,而是保存在内存中,以便下一次的快速显现。但是如果应用程序接收到系统发出的low-memory war原创 2018-02-05 13:14:32 · 334 阅读 · 0 评论 -
iOS 真机模拟内存警告
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.内存警告原理 *iphone下每个app可用的内存是被限制的,如果一个app使用的内存超过20M,则系统会向该app发送Memory Warning消息。收到此消息后,app必须正确处理,否则可能出错或者出现内存泄露。 *app收到Memory W原创 2018-02-04 10:41:57 · 2551 阅读 · 1 评论 -
iOS 内存管理~深浅拷贝~引用计数器
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、拷贝引用计数器浅copy,类似strong,持有原始对象的指针,会使retainCount加一。深copy,会创建一个新的对象,不会对原始对象的retainCount变化。二、代码实现测试// 也许你会疑问arc下如何访问retainCount属性,原创 2017-09-09 21:43:08 · 1625 阅读 · 0 评论 -
iOS 用symbolicatecrash来符号化崩溃日志
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、用symbolicatecrash来符号化崩溃日志 1.崩溃日志 symbolicatecrash demo1.crash Demo1.app.dSYM -o processed.crash 2.符号化后的crash文件将会被写入processed.c原创 2017-09-11 00:09:54 · 1682 阅读 · 0 评论 -
iOS @property中的NSString, NSArray, NSDictionary属性为什么大多时候用copy而不用strong的原因
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、代码实现数组赋值不用copy数据分析#import "ViewController.h"@interface ViewController ()@property (nonatomic,strong)NSArray *array;//全局不可变数组原创 2017-09-10 12:38:08 · 1027 阅读 · 0 评论 -
iOS block为什么要用copy
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、栈区和堆区概念内存的栈区 :由编译器自动分配释放, 存放函数的参数值, 局部变量的值等. 其操作方式类似于数据结构中的栈. 内存的堆区 : 一般由程序员分配释放, 若程序员不释放, 程序结束时可能由OS回收. 注意它与数据结构中的堆是两回事, 分配方式倒是类似于链表.原创 2017-09-10 12:10:30 · 5915 阅读 · 0 评论 -
iOS 内存管理~自定义对象的拷贝
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、浅拷贝首先创建Person.h和Person.m,实现协议#Person.h@interface Person : NSObject @property (nonatomic,copy) NSString *name;@end原创 2017-09-09 21:34:25 · 291 阅读 · 0 评论 -
iOS 内存管理~集合对象的copy和mutableCopy
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、集合&不可变集合类对象是指NSArray、NSDictionary、NSSet ... 之类的对象。NSArray* arr = @[@[ @"a",@"b" ], [@[@"c", @"d"] mutableCopy],@"AA", [NSMutableStringstr原创 2017-09-09 21:29:05 · 337 阅读 · 0 评论 -
iOS 内存管理~非集合对象的copy和mutableCopy
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、非集合&不可变系统非集合类对象指的是 NSString, NSNumber ... 之类的对象。下面先看个非集合类immutable对象拷贝的例子NSString* str = @"test string";NSString* strCy = [str copy];原创 2017-09-09 21:19:53 · 416 阅读 · 0 评论 -
iOS 内存管理~深拷贝(Deep Copy)
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、深拷贝概念1.深拷贝,是直接拷贝整个对象的内存到另一块内存中。2.在Objective-C中,通过两个方法 copy和mutableCopy可以执行拷贝操作,其中copy是获得一个不可变对象,而mutableCopy是获得一个可变对象。3.并且两个方法分别调用copyWithZo原创 2017-09-09 21:03:47 · 755 阅读 · 0 评论 -
iOS OC内存分析优化~笔记
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一.内存分析1.静态分析(Analyze)不运行程序, 直接检测代码中是否有潜在的内存问题(不一定百分百准确,仅仅是提供建议)结合实际情况来分析,是否真的有内存问题2.动态分析(Profile == Instruments)1> 运行程序,通过使用a原创 2017-08-25 22:20:42 · 530 阅读 · 0 评论