Как NSData пишет в файл в многопоточном режиме? - PullRequest
0 голосов
/ 28 июня 2011

Привет У меня проблема с сохранением nsdata в файл в многопоточности.

В основном потоке я использовал:

[NSThread detachNewThreadSelector:@selector(DownloadImage) toTarget:self withObject:nil];

И в DownloadImage Method:

- (void)ThreadDownloadThumbImage
{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    [loadThumbLock lock];
    .....//I get the NSData for my image here
    [data writeToFile:path atomically:YES];
    [loadThumbLock unlock];
    [pool release];
}

Тогда я всегда получаю исключение EXC_BAD_ACCESS при использовании data writeToFile.Данные уже загружены, потому что я могу использовать imageWithData и показать его в UIImageView. Так что я думаю, что это проблема с writeToFile в этой теме.И на этом пути нет проблем.

Может кто-нибудь мне помочь? Спасибо!

1 Ответ

0 голосов
/ 29 июня 2011

ОК. Я знаю, что это проблема с documentDirectory.

Я получаю documentDirectory и сохраняю путь в extern var.И проблема в том, что когда я получил этот путь от NSFileManager, я не использовал retain.И я добавил сохранить, чтобы решить эту проблему.

...