
我們很少關(guān)注應(yīng)用啟動(dòng)前,系統(tǒng)會(huì)給我們做些什么事情,可能知道+ load和constructor會(huì)在main方法之前執(zhí)行。那么這次我們來看看mai...
在平時(shí)的iOS開發(fā)中,我們大部分還是依靠著最早的MVC的思想開發(fā)著司忱,最多也是進(jìn)行了部分變種,比如MVP,MVVM瞬欧,這些都是完全的面向?qū)ο蟮乃枷耄?..
多線程編程一直是一個(gè)非常難的話題,而資源競(jìng)爭(zhēng)和死鎖問題則是比較常見的多線程問題罢防,這里我們來看看如何檢測(cè)這些問題艘虎。 LLVM 其實(shí)llvm項(xiàng)目自身...
相信大家在學(xué)習(xí)C語言的時(shí)候,malloc是最早遇到的幾個(gè)方法之一咒吐,這里就來深入的了解下野建,macOS/iOS中用戶空間的內(nèi)存分配。 引言 首先恬叹,我...
內(nèi)存柵欄(Memory fence)候生,也稱為內(nèi)存屏障(Memory barrier),以前碰到這類概念都是基于鎖的理解绽昼,比如dispatch_b...
在處理異步過程中唯鸭,我們經(jīng)常會(huì)碰到這種情況,需要異步處理并異步回調(diào)completionHandler绪励,但是有些場(chǎng)景下肿孵,如果你在處理完異步邏輯,而不...
我們都認(rèn)為C語言是一種非常靜態(tài)的語言疏魏,幾乎沒有什么動(dòng)態(tài)特性停做,同時(shí)往往在編譯器就決定了整個(gè)運(yùn)行方式,運(yùn)行期是很難改變其運(yùn)行狀態(tài)的大莫。其實(shí)C語言也是可...
在之前做debug工具的時(shí)候蛉腌,就有一個(gè)想法,在頁面產(chǎn)生卡頓的時(shí)候只厘,如果能夠獲取主線程的函數(shù)調(diào)用棧就好了烙丛,就可以分析出哪里出現(xiàn)了性能瓶頸。由于當(dāng)時(shí)...
在平時(shí)開發(fā)和調(diào)試中羔味,經(jīng)常遇到C調(diào)用棧和匯編河咽,所以這里來統(tǒng)一的了解下這部分內(nèi)容,本章需要一定的匯編基礎(chǔ)才能更好的理解赋元。 函數(shù)簽名 在JavaScr...