首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
大厂
订阅
大山里的猎人
更多收藏集
微信扫码分享
微信
新浪微博
QQ
18篇文章 · 0订阅
NSRunLoop 总结
NSRunLoop对象是OC对象,是对CFRunLoopRef的封装,可以通过getCFRunLoop方法获取其对应的CFRunLoopRef对象。注意,NSRunLoop不是线程安全的,但CFRunLoopRef是线程安全的。 (2)RunLoopMode NSRunLoop…
iOS 常用锁 NSLock ,@synchronized,dispatch_semaphore 等的底层实现及使用详解
在 iOS 开发过程中我们通过异步和多线程来提高程序的运行性能,与此同时多线程安全也就成为了一个我们必须要面对的问题,从安全上来说应该尽量避免资源在线程之间共享,以减少线程间的相互作用
【iOS 印象】性能优化梳理(Swift)
主线程卡顿监控,通过子线程监测主线程的 runLoop,判断两个区域状态之间的耗时是否达到一定阈值。 FPS监控。要保持流畅的UI交互,App 刷新率应该当努力保持在 60fps。监控实现原理比较简单,通过记录两次刷新时间间隔,就可以计算出当前的 FPS。 引用计数(refer…
【基本功】深入剖析Swift性能优化
2014年,苹果公司在WWDC上发布Swift这一新的编程语言。经过几年的发展,Swift已经成为iOS开发语言的“中流砥柱”,Swift提供了非常灵活的高级别特性,例如协议、闭包、泛型等,并且Swift还进一步开发了强大的SIL(Swift Intermediate Lang…
Swift开发小记(含面试题)
let用来声明常量,var用来声明变量。了解js的对于这两个应该不陌生,但是区别还是挺大的,尤其是let,在js中是用来声明变量的,const才是用来声明常量的。 如果不显示说明,Swift会根据声明时赋值自动推断出对应类型。一般不太需要标注类型,但是之前遇到过在某些情况下需要…
iOS 升级打怪 - NSObject 的底层数据结构
在 Objective-C 中对象共有三种类型,分别是实例对象、类对象和元类对象。isa 和 superclass 在三种类型对象之间联系。
ios 底层 NSObject内部结构
找到hobby这个属性变量了,当然方法列表也能在这里找到。所以,我们知道了类的属性,实例方法,都存贮在这里。 通过信息可以看出来,类方法确实存在于元类中。
iOS 调试技能 bug定位、性能调试、常见问题分析
常用调试方式 Print VS 单步调试 说到调试,刚入门编程时,用得最多的无疑是 print,毕竟连教材都是这样写的,直接打印,简单明了。但是当打印内容太多时,就容易看得头晕脑胀.
iOS 内存管理机制
内存管理 1. 引用计数 引用计数(Reference counting)是一个简单有效管理对象生命周期的方式。 当我们新建一个新对象时候,它的引用计数+1,当一个新指针指向该对象,将引用计数+1。当
iOS底层探索-散列表
上一篇 内存管理 中我们了解到,对象的内存管理有tagged pointer这种无需引用计数的,也有需要引用计数的;而当 指针为非nonpointerIsa、或者nonpointerIsa中的 ext