Asynchronous vs synchronous methods on iphone
<p>I saw there is a method for synchronous, like if I wanted to do something like: </p>

<pre><code>-(IBAction)doNSURLConnSync {
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    NSError *error = nil;
    NSURLResponse *response = nil;
    [NSURLConnection sendSynchronousRequest:request                                      returningResponse:&amp;response                                                            error:&amp;error];
}
</code></pre>

<p>How does it perform differently than if I did asynchronous:</p>

<pre><code>-(IBAction)doNSURLConnASync {
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request
                                                                delegate:self];
    if (connection) {
        responseData = [[NSMutableData alloc] init];
        [webview loadHTMLString:@"" baseURL:nil];
        [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
    }
    else {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error"
                                                        message:@"Network error occured" 
                                                       delegate:self 
                                              cancelButtonTitle:@"OK" 
                                              otherButtonTitles:nil];
        [alert show];
        [alert release];
    }
}

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    NSLog(@"%s", __FUNCTION__);
}

-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    [responseData appendData:data];
}

-(void)connectionDidFinishLoading:(NSURLConnection *)connection {
    [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
    [connection release]; // got passed in as a param.  we are done with it now.
    [webview loadData:responseData
               MIMEType:nil
       textEncodingName:nil
                baseURL:nil];
    [responseData release];
}
</code></pre>

<p>Also, with my doNSURLConnSync method, I am just trying to load a UIWebView.  Is there a reason why it doesn't?  The button just sits there and stays highlighted, while it tries to access the webpage, but does nothing in the end, compared to the asynchronous version.   </p>

<p>Also, for networkactivityindicator in my asynchronous code, I wanted to set my UIWebView to blank, have the indicator on while my webview loads, and then turn off the network activity indicator once the page loads.  However, if I delete the loadHTMLString method, the network activity indicator works as it's supposed to, but with the loadHTMLString, the UIWebView goes blank, but the network activity indicator does not.  Any thoughts?  Thanks.</p>
