Delegacja NSURLConnection i wątkowanie - iPhone
Mam klasę, która aktualizuje dwa pliki .plist w katalogu dokumentów aplikacji za pomocą NSURLConnection. Klasa działa jak własny delegat do NSURLConnection. Działa poprawnie, gdy pytam o pojedynczy plik, ale nie działa, gdy próbuję zaktualizować dwa pliki. Czy wygląda na to, że powinienem rozpocząć nowy wątek dla każdej wiadomości getNewDatabase?
- (void)getAllNewDatabases {
[self performSelectorOnMainThread:@selector(getNewDatabase:) withObject:@"file1" waitUntilDone:YES];
[self performSelectorOnMainThread:@selector(getNewDatabase:) withObject:@"file2" waitUntilDone:YES];
}
- (BOOL)getNewDatabase:(NSString *)dbName
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSMutableString *apiString = [[NSMutableString alloc] initWithString:kAPIHost];
[apiString appendFormat:@"/%@.plist",dbName];
NSURLRequest *myRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:apiString] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
NSURLConnection *myConnection = [[NSURLConnection alloc] initWithRequest:myRequest delegate:self];
[apiString release];
if( myConnection )
{
//omitted for clarity here
}
[pool release];
}
//NSURLConnection delegate methods here ...