CoreDataのマルチスレッドのアクセスをチェックする

CoreDataのスレッド間のチェック


CoreDataはスレッドセーフではないため、ContextやManagedObjectがスレッドをまたぐ場合、場合によってはデッドロックになり、画面が固まったりします。
この場合によってはというのが曲者でなかなかその原因に気づかなかったりしてました。
ただiOS8.1 x Yosemiteからはフラグを設定すると解決できるみたいです。


-com.apple.CoreData.ConcurrencyDebug 1


実際に別スレッドで作ったContextをつかってオブジェクトを生成すると


エラーで止まってくれるので、間違った使い方をしててもすぐに発見できます!

もう少し早く知りたかった><

0 件のコメント:

コメントを投稿

.mitmproxyを使ってHTTPSの通信を確認

公式のドキュメント https://docs.mitmproxy.org/stable/ # install ## mac ``` $ brew install mitmproxy ``` ## iPhone ### 証明書 セキュアな通信を傍受するために、プロファイ...