首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Crash
订阅
owenhong
更多收藏集
微信扫码分享
微信
新浪微博
QQ
23篇文章 · 0订阅
抖音思路复刻:iOS 卡死(ANR)监控 + 自动符号化全流程实战
本文复刻字节/抖音卡死(ANR)治理思路:主线程 RunLoop 心跳监控,8 秒判定卡死,超阈值后每秒采样主线程栈并保存为 JSON。再用 dSYM + atos 脚本自动符号化,并对 Swift
字节跳动如何系统性治理 iOS 稳定性问题
本文是丰亚东讲师在2021 ArchSummit 全球架构师峰会中「如何系统性治理 iOS 稳定性问题」的分享全文
iOS 写一个死锁检测
前言 最近看了字节的新文章 如何系统性治理 iOS 稳定性问题。里面提到了当检测到APP卡死时的归因问题,通过死锁检测,我们可以判断本次卡死是否是死锁引起。 原理看上去非常简单,就好像打开冰箱,把大象
[译]理解 iOS 异常类型
当你的iOS应用崩溃的时候,我们需要去分析异常日志以定位根本原因。崩溃可能是 “低内存崩溃 Low Memory Crash” 或者 “普通异常崩溃”。当碰到“异常”时,更好的理解“不同类型的异常”能够真正帮助我们快速定位问题所在。 在这篇文章中,我们将研究 iOS 应用可能碰…
为什么多线程下给全局变量赋值会崩溃
问题 Demo 在多线程下同时给全局变量赋值时会发生崩溃: 崩溃原因 如下为源码的汇编代码: 对汇编代码进行反汇编,可以看出 ARC 下编译器添加了读取旧值 oldValue = _instance
【iOS内功】ARM汇编实战,解析iOS14 UICollectionView死循环问题
9月初iOS14正式发布,线上版本新冒出许多Crash。有一个Crash,UICollectionView刷新逻辑死循环,卡死了主线程。 阳差阳错,中美两个程序员的“误会”造成了这个Crash。 App有一个页面,自定义了一个XXCollectionView。XXCollect…
App崩溃现场取变量名和其实际值对应关系(不只是寄存器)
前段时间群里有同学提说希望能在App的崩溃日志中得到崩溃现场当前方法中各个变量名和其当前值(而不是只有寄存器),于是去调研了一下.dSYM文件格式,发现理论上是可行的。 1. .dSYM 文件基本概念 .dSYM文件是Xcode在编译iOS工程过程中产生的符号文件,一般用于崩溃…
iOS Crash防护
“信号”是操作系统模拟软硬中断的工作过程的一种处理异步事件的机制,例如:终端用户键入ctrl+c会产生SIGINT信号默认会终止终端进程。 终端连接断开,则将此信号送给与该终端相关的控制进程(会话首进程)。 若父进程退出导致进程组成为孤儿进程组,且该进程组中有进程处于停止状态(…
一文读懂iOS线程调用栈原理
还要一个重要的用途就是应用性能优化中的“卡顿检测”,需要获取主线程的调用栈,来检测具体的函数调用过程分析耗时来优化性能。 卡顿检测获取线程堆栈信息,如微信开源性能探测工具Matrix,检测包括崩溃、卡顿及爆内存,目前包含两个插件:WCCrashBlockMonitorPlugi…
iOS App Crash 学习:(四):KSCrash 使用以及源码解读(2)
kstenerud/KSCrash The Ultimate Crash Reporter! 书接上回,这里我们接着聊,这篇会涉及更细节的东西,看 KSCrash 框架如何获取调用堆栈、如何捕获和处