Slide 1

Slide 1 text

A tip for using magical record with Core Data Stack @wpsteak

Slide 2

Slide 2 text

Persistent Store Coordinator MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MR_defaultContext NSMainQueueConcurrencyType Managed Object Context parent context Magical Record

Slide 3

Slide 3 text

DataManager Access database Persistent Store Coordinator MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MR_defaultContext NSMainQueueConcurrencyType Managed Object Context parent context Magical Record Current Architecture

Slide 4

Slide 4 text

DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext NSMainQueueConcurrencyType MR_defaultContext Magical Record Current Architecture Main thread Background Thread Operation Database access

Slide 5

Slide 5 text

DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext NSMainQueueConcurrencyType MR_defaultContext Magical Record UI Block Main thread Background Thread Operation > 2x Database access

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MOC Nested Managed Object Contexts MOC Magical Record Background Main Background MOC

Slide 8

Slide 8 text

DataManager MOC MOC NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Main thread Background Thread Background

Slide 9

Slide 9 text

DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Background Thread operation > 2x Access in background MOC MOC Main thread Background

Slide 10

Slide 10 text

DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Background Thread UI MOC Main thread fetch data Database access

Slide 11

Slide 11 text

End