DownloadAndParseBook 클래스를 만들었습니다. 데이터 나 네트워크 오류가 발생하기 전에 자동 응답하지 않습니다.[self release], [self retain]을 사용하는 것이 좋은 방법입니까?
[자기 릴리즈], [자기 유지]를 사용했습니다. [self release], [self retain]을 사용하는 것이 좋은 방법입니까? DownloadAndParseBook에 잠재적 인 버그가 있습니까?
@implementation GetBooks
-(void) books
{
for(int i =0; i<10; i++)
{
DownloadAndParseBook *downloadAndParseBook =
[[[DownloadAndParseBook alloc] init]autorelease];
[downloadAndParseBook startLoadingBook];
}
}
@end
@implementation DownloadAndParseBook
- (id)initWithAbook:(int)bookID
{
if(self = [super init])
{
[self retain];
}
return self;
}
- (void)startLoadingBook
{
[NSURLConnection connectionWithRequest:request delegate:self];
}
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
[self release];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
[self saveResultToDatabase];
[self release];
}
@end
도움이 될만한'[self release]'는 절대로 사용하지 마십시오. – Manuel
예, '[self release]'는 일어날 때까지 기다리는 충돌입니다. 부모로부터 해방. –