У меня проблема с тем, что я получаю EX_BAD_ACCESS при вызове release для объекта NSStream в моем dealloc на iPhone.
следующий код
- (void)dealloc {
DLog(@"dealloc started for: %@",self);
@synchronized(self) {
lookupCount--;
if (lookupCount==0) {
UIApplication* app = [UIApplication sharedApplication];
app.networkActivityIndicatorVisible = NO;
}
}
DLog(@"inStream retain count before release: %d",[inStream retainCount]);
[inStream release];
DLog(@"outStream retain count before release: %d",[outStream retainCount]);
[outStream release];
[queryToSend release];
[resultString release];
[data release];
[super dealloc];
NSLog(@"dealloc finsihed for : %@",self);
}
падает с EX_BAD_ACCESS на
[опередить релиз];
линия.
Вывод журнала выглядит следующим образом
2009-04-29 13:16:28.547 App[30580:20b] -[SimpleQuery dealloc] [Line 160] dealloc started for: <SimpleQuery: 0x56e540>
2009-04-29 13:16:28.547 App[30580:20b] -[SimpleQuery dealloc] [Line 168] inStream retain count before release: 1
2009-04-29 13:16:28.548 App[30580:20b] -[SimpleQuery dealloc] [Line 170] outStream retain count before release: 1
Хотите знать, есть ли у кого-нибудь идеи, почему это может быть?