[파서 릴리스]에서 간헐적 인 충돌이 발생합니다. 나는 시간의 약 5 %를 볼 것이라고 말하고 싶습니다. 그리고 파싱 할 데이터는 각 충돌마다 다릅니다. 나는 왜 내 인생에 대해 생각할 수 없다.NSXMLParser를 해제 할 때 EXC_BAD_ACCESS에서 충돌이 발생합니다.
버그 보고서를 제출하기 (필자의 행운과 함께 샘플 코드로 재생산되지 않음) 누구에게이 문제가 발생했는지, 그리고 무슨 일이 일어날 지 알고 있습니까?
NSData *d = [data copy]; // data is typically 2K-13K bytes
@synchronized (xmlParserLock) {
[[NSURLCache sharedURLCache] setMemoryCapacity:0];
[[NSURLCache sharedURLCache] setDiskCapacity:0];
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSXMLParser *parser = [[NSXMLParser alloc] initWithData:d];
[parser setDelegate:self];
[parser setShouldProcessNamespaces:NO];
[parser setShouldReportNamespacePrefixes:NO];
[parser setShouldResolveExternalEntities:NO];
[parser parse];
[parser release];
[pool release];
}
[d release];
그리고 여기에는 GDB의 '어디에'[파서 릴리스]를 가리키는 출력 : 사전에 어떤 도움
#0 0x93d08d12 in xmlCharEncCloseFunc()
#1 0x93cfc0e3 in xmlFreeParserInputBuffer()
#2 0x93cfc08f in xmlFreeInputStream()
#3 0x93cfbdac in xmlFreeParserCtxt()
#4 0x961384d6 in -[NSXMLParser dealloc]()
#5 0x00149de7 in -[MyParserClass parseResponse] (self=0x104e9f0, _cmd=0x1766dc) at /Users/mike/Documents/MyApp/Classes/MyParserClass.m:60
감사합니다!
는 MyParserClass 여기에 표시하고있는 방법 조각, 그리고 [파서 릴리스] 라인 60에? –
브렌트 : 맞습니다. –