My method saveNote uses selectedNote in its core data context save operation. Is it possible that the second line of code will run before the saveNote method finishes?
[self saveNote];
selectedNote = [[self.editNoteViewControllerDelegate selectPreviousNote] initArrays];
Of course no. If you are using selectedNote in the method ‘saveNote’, all that method is finished before the second line of your code is executed. That is, you are calling a method and not launching a new thread or postponing the action.