Assume that I have fetched a NSManagedObject within a performBlock on a private NSManagedObjectContext. I have also saved a pointer of the NSManagedObject in the AppDelegate. so basically I am holding it on the 'main thread'. Could this cause any issue? Note that I always access the attributes within a performBlock submitted to the correct context.
Pointer to a NSManagedObject outside a performBlock
204 Views Asked by ELKA At
1
There are 1 best solutions below
Related Questions in IOS
- Overlapping UICollectionView in storyboard
- Cannot pod spec lint because of undeclared type errors
- Is the transactionReceipt data present in dataWithContentsOfURL?
- UIWebView Screen Fitting Issue
- ZXingObjC encoding issues
- iOS: None of the valid provisioning profiles allowed the specific entitlements
- How to hide "Now playing url" in control center
- CloudKit: Preventing Duplicate Records
- Slow performance on ipad erasing image
- Swift code with multiple NSDateFormatter - optimization
- iOS 8.3 Safari crashes on input type=file
- TTTTimeIntervalFormatter always returns strings in English
- How do I add multiple in app purchases in Swift Spritekit?
- Setup code for xibs in iOS. -awakFromNb:
- iOS Voice Over only reads out the title of any alert views
Related Questions in SWIFT
- Overlapping UICollectionView in storyboard
- Cannot pod spec lint because of undeclared type errors
- Swift code with multiple NSDateFormatter - optimization
- How do I add multiple in app purchases in Swift Spritekit?
- cellForRowAtIndexPath and prepareForSegue return different label colors
- Getting this message in my console in xcode "Ignoring restoreCompletedTransactionsWithApplicationUsername: because already restoring transactions"?
- Change background of an Accessory View in a UITableViewCell
- fade in an bounce animation subview
- Create a PFObject and PFRelation after PFUser Sign Up
- Swift 2 - Pattern matching in "if"
- How do I give inputs through NSURL
- How do I add custom cells to TableView in Swift?
- UIWebView not loading URL in simulator
- Compiler complains that 'Expression resolved to unused function' when removing index in array of functions
- Cast from 'Int?' to unrelated type 'NSNumber' always fails
Related Questions in CORE-DATA
- Swift code with multiple NSDateFormatter - optimization
- IOS Where To Persist Current User from Back-end
- iCloud Core Data "no document at URL"
- restrict sqlite-wal and sqlite-shm from icloud backup
- Delegate returning nil - Swift
- How to set a core-data attibute to nil, in Swift?
- iOS make task run on background thread Thread safe?
- Calling method on object in NSPredicate with Core Data
- How to get Managed Object context from RestKit 0.20
- Write NSData in NSHomeDirectory
- My app is crashing when I assign the managed object context to a variable
- Fetch unique object based on attribute name from coredata
- NSPredicate filter part of array
- Property 'package_number_7' not found on object of type 'User *' after Lightweight Migration
- Core Data relationship Many-To One
Related Questions in NSMANAGEDOBJECTCONTEXT
- Swift get specific NSManagedObject from entity (core data)
- Core Data properties based upon relationships returning NULL
- Core Data concurrency queue style MOC getters thread safety
- managed object context nil restkit while unitTesting
- Data not reloading automatically in uitableview when using nsfetchedresultscontroller
- Can concurrence type be changed of NSPersistentDocument's managedObjectContext?
- NSFetchedResultsController with transformable attribute
- How to merge unsaved NSManagedObjectContext changes from one context to another?
- Xcode 8.1 - NSManagedObjectContext missing in AppDelegate
- Pointer to a NSManagedObject outside a performBlock
- CoreData NSManagedObjectContext not found
- Core data concurrency: avoid writing at two seperate places
- Find an updated NSManagedObject via NSPredicate
- Remove NSManagedObject within commitEditingStyle
- Crash when trying to save NSManagedObject
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
No, you cannot do that. A reference to an object from a different context can crash your app.
There are several solutions to this. For example, your global variable could be a unique attribute that you can use to fetch the object in the right context.
Some of the operations might be done on the same context as the one in which your global object is held.
And finally, you can also pass objects between contexts using the
objectID, an opaque typeNSManagedObjectID. You could initialize your local object in a particular thread withobject(with:).