- 博客(6)
- 资源 (4)
- 收藏
- 关注
原创 iOS开发-AutoreleasePool是什么时候销毁的?
在面试中经常会遇到面试官问这样的问题。 AutoreleasePool是什么时候销毁的? 这个问题能回答上来的话,肯定要对AutoreleasePool和RunLoop有所了解才行。AutoreleasePool是在什么时候创建的,又是在什么时候被销毁? 这里我们再简单的回顾一下AutoreleasePool的作用。 AutoreleasePool被称为自动释放池,在释放池中的
2017-10-31 13:21:33 4156 4
原创 iOS标记指针(Tagged Pointer)技术
在2013年9月,苹果推出了iPhone5s,配备了首个采用64位架构的A7双核处理器,为了节省内存和提高执行效率,苹果提出了标记指针(Tagged Pointer) 的概念。对于64位程序,引入Tagged Pointer后,相关逻辑能减少一半的内存占用,以及3倍的访问速度提升,100倍的创建、销毁速度提升。原有的对象为什么会浪费内存?假设我们要存储一个NSNumber对象,其值是一个整数。正常
2017-10-29 22:09:07 1279
原创 iOS开发-关于allocWithZone/copyWithZone/NSZone
NSZone可以想象成一个内存池,alloc或是dealloc这些操作,都是在这个内存池中操作的。 Cocoa总是会配置一个默认的NSZone,任何默认的内存操作都是在这个“zone”上操作的。默认的NSZone的缺陷在于,它是全局范围的,时间一长,必然会导致内存的碎片化,如果你需要大量的alloc一些object,那么性能就会受到一些影响。 所有cocoa提供方法,你可以自己生成一个NSZon
2017-10-29 20:41:45 996
原创 iOS 将文本复制到剪切板
UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];pasteboard.string =@"将文本复制到剪切板";
2017-10-29 20:24:46 1601
原创 Git-根据tag创建分支
有时候需要根据tag创建分支. 现在主分支上有一个tag为ver1.0.0.1,主分支的名字为master.1.执行:git origin fetch 获得最新.2.通过:git branch 会根据tag创建新的分支.例如:git branch newbranch ver1.0.0.1 会以tag ver1.0.0.1创建新的分支newbranch;3.可以通过git checkout
2017-10-12 18:08:24 3644 1
原创 iOS开发中字符串和字典的转换
1.字符串转字典NSString * jsonString = @“123”;NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:jsonData
2017-10-12 18:04:11 7691
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人