0

NSConfinementConcurrencyCoreData を使用するレガシー コードがいくつかあり、それらの使用をNSPrivateQueueConcurrencyTypeorに切り替えNSMainQueueConcurrencyTypeます。

NSConfinementConcurrencyTypeからに切り替える際に注意すべき問題NSPrivateQueueConcurrencyTypeやリスクはありますか?NSMainQueueConcurrencyType

4

1 に答える 1

0

NSMainQueueConcurrencyType は、メイン ディスパッチ キュー、つまりメイン スレッドに関連付けられたコンテキストを作成します。このようなコンテキストを使用して、メイン スレッドで実行する必要があるオブジェクト (UI 要素など) にリンクすることができます。

NSPrivateQueueConcurrencyType は、操作するプライベート ディスパッチ キューを作成および管理します。新しいメソッド performBlock: または performBlockAndWait: を使用する必要があります。コンテキストは、渡されたブロックを独自のプライベート キューで実行します。

最後に、NSConfinementConcurrencyType はデフォルトのタイプであり、それが作成されたスレッド内でのみ使用できます。したがって、NSOperation 内で、正しい方法で使用しました。簡単なメモ。子コンテキストとして使用する場合は、「キュー コンテキスト」(NSMainQueueConcurrencyType または NSPrivateQueueConcurrencyType) が必要です。

于 2015-11-17T10:42:01.843 に答える