首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
apm
订阅
Boyang_
更多收藏集
微信扫码分享
微信
新浪微博
QQ
16篇文章 · 0订阅
iOS原生开发视角下的复杂列表开发与性能优化
前面终于将跨平台、前端两类开发的复杂列表进行了分享,当然以后还会继续分享更加详细深入的。但现在,终于能作为一名iOS这个老本行的开发者,来讲讲在开发iOS App的过程中的复杂列表。
iOS信号量造成线程优先级反转 | 京东云技术团队
在并发队列使用信号量会可能会造成线程优先级反转 一、在iOS16 & XCode14上遇到 - 使用信号量造成线程优先级反转问题 提醒 经过查询资料,发现是在XCode14上增加了工具,比如 : Th
iOS的高性能、高实时性key-value持久化组件
在开始写这个组件之前,应该先调研一下NSUserDefaults性能(ps:这里有个失误,事实上我是在写完这个组件以后才调研的)。 据我所知NSUserDefaults有一层内存缓存的,所以它提供了一个叫synchronize的方法用于同步磁盘和缓存,但是这个方法现在苹果在文档…
iOS野指针定位总结
野指针就是指向一个已删除的对象或者受限内存区域的指针。 我们写C++的时候强调指针初始化为NULL,强调用完后也为其赋值为NULL,谁分配的谁回收,来避免野指针的问题。 比较常见的就是这个指针指向的内存,在别处被回收了,但是这个指针不知道,依然还指向这块内存。 MRC 时代因为…
天罗地网? iOS卡顿监控实战(开源)
行吧,那就自己撸一个。 因为想装逼。 开个玩笑,实际上是因为公司项目处于隐私合规考虑,没有使用国内平台而使用了Fabric,但它又没有提供卡顿监控这部分功能,不然你以为蜗牛闲的蛋疼🙄。 用户在操作之后无法进行下一步,卡死在当前页面,过一会才恢复。(主线程阻塞) 查词候选、云输…
iOS内存二三事
Page In/Out和 Swap In/Out 概念类似,只不过Page In/Out是将某些页的数据写到内存/从内存写回磁盘交互区;而Swap In/Out是将整个地址空间的数据写到内存/从内存写回磁盘交互区;本质都是交互机制。 通用的计算机(大型机和专用计算机不在此范围)…
了解和分析iOS Crash Report
当app发生crash时会产生crash report,这对我们定位crash的原因非常有帮助。这篇文档重点介绍了如何符号化、看懂并解析一篇crash Report。 当app发生crash时,系统会生成crash report并存储在设备上。crash report会描述ap…
关于iOS内存的深入排查和优化
虚拟内存机制在这里就不多说了,主要包括内存管理单元MMU、内存映射、分段、分页。在iOS中,一页通常有16KB的内存空间。 分配内存的时候,先分配虚拟内存,然后使用的时候再映射到实际的物理内存。 一个VM Region指的是一段连续的虚拟内存页,这些页的属性都相同。 VM分为C…
[旧文搬运]DateFormatter轻度优化探索
app启动后的60s内,快速滑动feed流页面,在这一过程中,主线程的执行时间大概是10.59s,我们项目中日期处理主要在func detailString(date: Date) -> String这个方法中进行,这个方法的运行时间为730ms,而其中 timeStr = f…
iOS 电量消耗改善:一招套路及相关姿势
先使用 Xcode Energy Gauge 分析出哪一块耗电(网络和 motion , 还是定位 ... ), 用 Time Profiler 定位问题与解决 ( Instruments 模版 ), 得到用户好的反馈。 Do it never/do it less (能不做…