
二進制重排 二進制重排其實并不是什么特別新穎的技術。 目的 二進制重排(layout)的目的在于將hot code聚合在一起,即使得最經常執行的...
arm64e由于引入了PAC機制,導致符號地址發生了巨大變化。也給堆棧回溯帶來了問題。 背景 從去年新iphone發布后,我們陸陸續續發現cra...
本文對iOS應用上經常遇到的Crash(常規signal觸發的閃退)進行分析,并結合筆者的優化經驗,給出Crash分析和建議。 一、Crash與...
什么是信號 信號(signal)是一種XPC通信方式。signal是一個4字節的無符號整形數字,在iOS/OSX中定義了31個已知的信號;在Un...
objc的很多設計,從底層實現上都不完全是線程安全的,這也導致在一些極端的并發情況下,會引起競爭導致的內存訪問錯誤問題。之前分析過_weak的設...
系統控件和系統堆棧的crash初看,總以為不好解決,本文通過一步步推導來分析定位,最終找到crash是應用堆棧觸發的 一、問題描述 最新線上新版...
1.前言 最近線上突然多了一些crash,類型是SEGV_ACCER,一看就認為是對象野指針了,基本都是多線程讀寫導致的; 但是仔細再一看cra...
_os_object_retain一看掛在dispatch里,想當然都會認為難道系統有bug了,但是問題不都是靠瞎猜的,還是有了分析才好下結論。...
使用多線程遍歷或操作集合對象的時候,務必要注意內存的及時釋放,否則一不小心就觸發內存峰值而閃退了。 最近新版本發布后,有較多用戶反饋閃退;經過部...