What is the significance of WaitUntilDOne in performSelectorOnMainThread?
IN what way the YES or NO set to Wait
If you say NO, performSelectorOnMainThread doesn't block, and will execute the next line of code after the performSelectorOnMainThread immediately without waiting for the main thread to execute your selector.
If you say YES, the thread from which you called performSelectorOnMainThread will block execution at that line until the main thread has executed your selector, then it will continue.