【问题标题】:Reading a Crash Log iOS读取崩溃日志 iOS
【发布时间】:2014-03-26 05:34:36
【问题描述】:

显然我的应用程序在使用实时服务器时崩溃了。当用户更改地图区域时,我正在下载 XML。服务器返回边界框的数据,我的应用程序显示注释。但是,当一个地方设置了 url 变量时,我的应用程序就会崩溃。它甚至不会在异常断点处中断,而是直接进入 main.m。

我的设备崩溃日志如下所示:

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Triggered by Thread:  0

Thread 0 Crashed:
0   libsystem_kernel.dylib          0x3b06f1fc __pthread_kill + 8
1   libsystem_pthread.dylib         0x3b0d6a4e pthread_kill + 54
2   libsystem_c.dylib               0x3b020028 abort + 72
3   libsystem_malloc.dylib          0x3b09d758 szone_error + 312
4   libsystem_malloc.dylib          0x3b09da1a free_tiny_botch + 62
5   CoreFoundation                  0x30692fd6 CFRelease + 890
6   APPName                         0x0011ef04 -[MyPlaceClass dealloc] (MyPlaceClass.mm:650)
7   APPName                         0x0011f684 -[MyTextPlace dealloc] (MyTextPlace.m:46)
8   libobjc.A.dylib                 0x3aacab06 objc_object::sidetable_release(bool) + 170
9   CoreFoundation                  0x30692e88 CFRelease + 556
10  CoreFoundation                  0x3069e3b4 -[__NSArrayM dealloc] + 156
11  libobjc.A.dylib                 0x3aacab06 objc_object::sidetable_release(bool) + 170
12  libobjc.A.dylib                 0x3aabc01e (anonymous             namespace)::AutoreleasePoolPage::pop(void*) + 354
13  CoreFoundation                  0x306961c4 _CFAutoreleasePoolPop + 12
14  UIKit                           0x32edf80c _wrapRunLoopWithAutoreleasePoolHandler + 32
15 

我检查了 (MyPlaceClass.mm:650) 和 (MyTextPlace.m:46)。看起来就像这样:

MyPlaceClass.mm 在第 650 行

- (void)dealloc {
    .....
    [placeURL release]; // <- This is line 650
    [super dealloc];
}

MyTextPlace.m 第 46 行

- (void)dealloc {
    [textContent release]; // <- This is line 46
    [super dealloc];
}

有人知道是什么导致我的设备出现错误和崩溃吗?我发现调试非常困难,因为我的异常断点不起作用。

【问题讨论】:

  • textContent 和 placeURL 的数据类型是什么?
  • 我的猜测是placeURL 已经被释放并且指针悬空。再次释放它会导致段错误
  • 显示 textContent 和 placeURL 的分配
  • 是的 placeURL 已经发布.... 愚蠢但感谢您的帮助! (也许将其作为答案发布,以便我接受?)
  • 开始使用 ARC 而不是非 ARC

标签: objective-c xml memory-management crash


【解决方案1】:

placeURL 已经发布。

【讨论】:

    猜你喜欢
    • 2019-03-24
    • 2017-10-07
    • 1970-01-01
    • 2019-06-14
    • 2016-05-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多