首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS优化
订阅
小爷我受够了
更多收藏集
微信扫码分享
微信
新浪微博
QQ
15篇文章 · 0订阅
iOS底层学习——锁
锁的分类:互斥锁、自旋锁;锁的性能分析;锁的作用;常用的@synchronized、NSlock、NSCondition、NSConditionLock、读写锁的使用方式和底层实现原理。
一个毫无道理的iOS问题
刚开始在朋友圈看到这个问题,以为是指针重指向产生野指的问题。但是亲自编译了一下发现并不是。 首先我觉得是因为string1被释放之后,string2被重新创建或是重指向什么的。 然而这些猜想都没有办法去测试,只能在其他方向找原因了。 然后我又尝试了将创建的属性声明改成统一的,比…
iOS动态调试防护
安全攻防,是一个互相博弈的过程,知彼知己才能百战不殆,想要做好防御,自然也要知道敌人是怎么进攻的.那我们就来探究一下,iOS应用安全的攻与防!
tableView 卡顿优化,除了缓存计算高度,还可以...
列表界面的卡顿优化,除了缓存计算高度, 还可以开个线程,异步计算高度并缓存, 再回到主线程,刷新界面
iOS 客户端编译优化实践
前言 公司虽然有专门的打包机,但是打包机打一次包总耗时30min左右。 在平常可能还没有什么关系,但是到了回归阶段就很难受了。 测试回归阶段发现一个bug,等开发定位问题->修复->打包->测试验证,
浅谈编译过程
首先名词解释部分,笔者会介绍编译器、GCC、LLVM相关内容。 1. 编译器 编译器不是硬件,是可以把源程序编译为目标程序的计算机程序。 2. 编译器架构 3. GCC GCC 即 GNU 编译器套件(GNU Compiler Collection)是可以编译 C、Object…
iOS获取任意线程调用栈
ARM有15种通用寄存器,但是其实有些通用寄存器是有特殊用途的,PCS(Procedure Call Standard for Arm architecture)就定义了过程调用中,寄存器的特殊用途。 r15:PC The Program Counter,也称作程序计数器PC,…
天罗地网? iOS卡顿监控实战(开源)
行吧,那就自己撸一个。 因为想装逼。 开个玩笑,实际上是因为公司项目处于隐私合规考虑,没有使用国内平台而使用了Fabric,但它又没有提供卡顿监控这部分功能,不然你以为蜗牛闲的蛋疼🙄。 用户在操作之后无法进行下一步,卡死在当前页面,过一会才恢复。(主线程阻塞) 查词候选、云输…
APM-卡顿监控
主要是主线程阻塞。在开发过程中,遇到的造成主线程阻塞的原因可能是: 主线程在等锁:主线程需要获得锁A,但是当前某个子线程持有这个锁A,导致主线程不得不等待子线程完成任务。 ...... Matrix 卡顿监控在 RunLoop 的起始最开始和结束最末尾位置添加 Observer…