views:

109

answers:

1

When init the NSXLParser as below:

NSXMLParser* xmlParser=[[NSXMLParser alloc] initWithContentsOfURL:[NSURL URLWithString:urlstring]];

if the server is down, it will wait for quite some time before the thread returns. It is really annoying even if I exit the application and restart the application, it will continue to wait with a black screen until it times out.

How to I abort the init? Is there a better way to check whether the server is up before calling the parser? Thanks for helping.

A: 

I ended up use a UIWebView to request the URL first. If it finish loading, I will then call the xmlparser to request the same url again. The nice thing about UIWebView request is that it runs on a different thread so the UI does not freeze.

This is not idea; I hate to request the same URL twice. If you have a better suggestion, please help.

Wayne Lo