Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
A tip for using magical record
Search
Pin-Shih Wang
October 14, 2014
Programming
0
150
A tip for using magical record
Pin-Shih Wang
October 14, 2014
Tweet
Share
More Decks by Pin-Shih Wang
See All by Pin-Shih Wang
iOS Extension
wpsteak
4
480
CI with Git Flow
wpsteak
2
260
Test With Xcode Server
wpsteak
0
110
a lighter reusable cell
wpsteak
0
83
Other Decks in Programming
See All in Programming
モダンOBSプラグイン開発
umireon
0
180
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
160
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
310
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
340
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
120
Codex の「自走力」を高める
yorifuji
0
1.3k
20260313 - Grafana & Friends Taipei #1 - Kubernetes v1.36 的開發雜記:那些困在 Alpha 加護病房太久的 Metrics
tico88612
0
240
Geminiをパートナーに神社DXシステムを個人開発した話(いなめぐDX 開発振り返り)
fujiba
0
120
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
180
Claude Codeログ基盤の構築
giginet
PRO
7
3.7k
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
190
How to stabilize UI tests using XCTest
akkeylab
0
140
Featured
See All Featured
First, design no harm
axbom
PRO
2
1.1k
GraphQLとの向き合い方2022年版
quramy
50
14k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
BBQ
matthewcrist
89
10k
Accessibility Awareness
sabderemane
0
86
How to make the Groovebox
asonas
2
2k
The Spectacular Lies of Maps
axbom
PRO
1
650
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
130
Writing Fast Ruby
sferik
630
63k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
330
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Producing Creativity
orderedlist
PRO
348
40k
Transcript
A tip for using magical record with Core Data Stack
@wpsteak
Persistent Store Coordinator MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MR_defaultContext NSMainQueueConcurrencyType
Managed Object Context parent context Magical Record
DataManager Access database Persistent Store Coordinator MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object
Context MR_defaultContext NSMainQueueConcurrencyType Managed Object Context parent context Magical Record Current Architecture
DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext NSMainQueueConcurrencyType MR_defaultContext Magical Record Current Architecture Main
thread Background Thread Operation Database access
DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext NSMainQueueConcurrencyType MR_defaultContext Magical Record UI Block Main
thread Background Thread Operation > 2x Database access
MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MR_defaultContext NSMainQueueConcurrencyType Managed Object Context
Nested Managed Object Contexts NSPrivateQueueConcurrencyType Managed Object Context Magical Record MR_context Main thread Background Background
MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MOC Nested Managed Object Contexts
MOC Magical Record Background Main Background MOC
DataManager MOC MOC NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Main thread Background
Thread Background
DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Background Thread operation > 2x
Access in background MOC MOC Main thread Background
DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Background Thread UI MOC Main
thread fetch data Database access
End