title: Is recurring method in background thread correct way in objective-c?
body: <p>I am trying the following code, where I am loading a file from the server in the background thread. And if it failed to load then again calling the same method, is this the right way to call it again in the background thread?</p>
  
  <pre><code>[self performSelectorInBackground:@selector(loadFileFromServer:) withObject:nil];
  
  int retryCount = 0;
  
  - (void)loadFileFromServer{
       FetchServerFile *fetchF = [FetchServerFile new];
       [fetchF fetchFile:^(BOOL OK){
        if(OK){
           [self toStart];
        }
        else{
           retryCount++;
           if(retryCount&lt;3){
               [self performSelectorInBackground:@selector(loadFileFromServer:) withObject:nil];
           }
           else{
               [self exitLogic];
           }
        }
       }];
  }
  </code></pre>