読者です 読者をやめる 読者になる 読者になる

甘いものが好きです

iOS App開発時に感じた疑問や課題、その他の雑感などを書いていきます。

Core Data

NSManagedObjectオブジェクトをdeep copyする方法

NSManagedObjectオブジェクトをdeep copyする方法を考えてみた。NSManagedObjectはNSCopyingプロトコルに適合していない。AttributeやRelationshipを個別にチェックしてコピーしていく方法が無難だろうと思う。*1*2 *1:Fetched Propertyは普段扱わないのでこ…

NSFetchRequestが返す結果のタイプを設定する

NSFetchRequestクラスのインスタンスメソッドexecuteFetchRequest:error:によってフェッチ処理を行うことができる。フェッチ結果は配列(NSArrayオブジェクト)形式で得られる。この配列の各要素はデフォルトではNSManagedObjectオブジェクトだが、フェッチ…

マルチスレッドでCore Dataを利用する場合にはスレッドごとにManaged Object Contextを用意する

Managed Object Contextはスレッドセーフではない Core Dataを利用するiOS Appの処理の一部をマルチスレッド実行するように修正したところ、実行時エラーが発生して強制終了するようになってしまった。このときデバッグコンソールには次のようなメッセージが…