環境:?
macOS High Sierra 10.13.1 Beta
Xcode 9.0.1
在調試的時候? 選中All Exceptions 的時候 (如圖一)? 如果全部勾選上的話 那么程序就卡在了main 函數入口中? (圖二)
但是如果把最后一個斷點去掉 就可以繼續跑下去? 不知道是什么原因? 然后就跑去Google 了? 但是Google 上搜到的只有問題 沒有答案?
有一個是說由于內存的問題 但是我是用模擬器跑的 用的整個電腦的共享內存 這應該不成立 然后就自己去琢磨了下? 本來想到的是不是在debug的時候 勾上了僵尸調試了? 但是沒找到 現在好像要手動添加變量了? 手動添加步驟:
參考鏈接Xcode如果設置僵尸調試模式
如何設置為NSZombieEnabled模式?
Xcode4 下設置 NSZombieEnabled 的方法:
方法一:Product -> Edit Scheme-> Arguments, 然后將點擊”加號”, 將 NSZombieEnabled 參數加到Environment Variables 窗口中, 后面的數值寫上 ”YES”.
方法二:Xcode4 菜單 Product -> EditScheme -> Diagnostics 設置窗口中直接勾上Enable ZombieObjects 即可
Xcode 可用 cmd+shift+< 進到這個窗口。
然后就嘗試著勾選掉 debug execute 選項 然后重新跑了下 就可以了 不知道為什么開始了一個debug execute 后在libc 中就會有這個斷點執行了? (c 沒學到位啊? 哎。。????)
今天看文章的時候看到Xcode 9 中設置僵尸對象的方法 來補充下 :
如有那個大神能講解下原理 麻煩指教下 感覺不懂的太多了? ?哎? ?要加速學習了? 。。