gpt4 book ai didi

iphone - 我的一个实体上的核心数据崩溃并出现 EXC_BAD_ACCESS

转载 作者:行者123 更新时间:2023-12-03 19:07:33 28 4
gpt4 key购买 nike

希望有人可以帮助我调试这个问题,因为 EXC_BAD_ACCESS 是我收到的唯一错误。我也尝试过打开 NSZombieEnabled,但据我所知,没有获得更多信息。

问题。我有四个实体:

A -> B -> C -> D

箭头表示一个集合:“A”包含与“B”的一对多关系,“B”包含与“C”的一对多关系等。为了创建我使用的实体:

id dto = [NSEntityDescription insertNewObjectForEntityForName:@"A" 
inManagedObjectContext:context];
NSLog(@"DTO: %@", dto);

这似乎适用于 A、B 和 C。但是,当在实体 D 上使用它时,应用程序会因 EXC_BAD_ACCESS 崩溃。问题似乎发生在访问对象时,因为注释掉 NSLog 和其他访问 dto 对象的方法时程序运行成功。

更新:

控制台输出

GNU gdb 6.3.50-20050815 (Apple version gdb-1346) (Fri Sep 18 20:40:51 UTC 2009)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin".sharedlibrary apply-load-rules all
Attaching to process 3100.
Program received signal: “EXC_BAD_ACCESS”.
warning: Unable to restore previously selected frame.
No memory available to program now: unsafe to call malloc
warning: check_safe_call: could not restore current frame

Data Formatters temporarily unavailable, will re-try after a 'continue'. (Not safe to call dlopen at this time.)
warning: Unable to restore previously selected frame.

堆栈
堆栈跟踪非常大(?),调试时加载“62826 堆栈帧”。显示其中的一部分: alt text alt text
第 #8-#41 行重复到第 #62500 帧周围。

最佳答案

因此,每当有那么多堆栈帧时,就意味着正在发生某种无限递归。我的猜测是,在创建 D 对象时,有一些代码会自动创建其他内容,而这些代码又会创建另一个 D 对象,并且存在一个未终止的循环。我将首先检查任何键值观察者或 NSManagedObject 覆盖

关于iphone - 我的一个实体上的核心数据崩溃并出现 EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2222155/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com