A long-running Parse operation is being executed on the main thread
Solution 1:
This is a gentle warning to the developers when they make the Parse calls that would block the main thread.
This is where you can see it all happen,, add a symbolic breakpoint on warnBlockingOperationOnMainThread
only if you use a Parse API released from 2015+. Otherwise, put it on the warnParseOperationOnMainThread
.
It'll break on that function while you are running your code, and will show you a stack trace which should help you to find the blocking function.
See the images below to have a better understanding.
Solution 2:
For me this happened when I called:
[[PFUser currentUser] refresh];
The solution was to replace it with:
[[PFUser currentUser] refreshInBackgroundWithBlock:nil];
See also this answer on the Parse Help site.
Solution 3:
It Almost happens with all Parse queries or data saving. It avoid this, there is option to perform operation in background. Actually there are two alternatives, one is to perform in background and other is perform in background with block of code.