gpt4 book ai didi

ios - Malloc 错误 "can' t 分配区域“失败,错误代码为 12。知道如何解决这个问题吗?

转载 作者:IT王子 更新时间:2023-10-29 08:03:46 30 4
gpt4 key购买 nike

我收到这个错误,不知道该怎么办:

AppName(3786,0xa0810540) malloc: *** mmap(size=16777216) failed (error code=12)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug

如果我在发生错误的那一行设置断点,我不知道我必须专门搜索什么。在仪器中,我检查了分配,并且该值一直在增加,直到所有分配达到 14.5 GB。

有人可以帮我吗?
刷51

编辑 1:
更多信息:
- 我正在模拟器中尝试此操作,而不是在 iOS 设备上。
- 这就是所有的输出(我多次收到此错误)。- 错误发生在这一行:

NSManagedObjectContext *context = [self managedObjectContext];
NSFetchRequest *fetchREntitySetsCards = [[[NSFetchRequest alloc] init] autorelease];
//NSFetchRequest *fetchREntityRelCardsAnswersNotes = [[[NSFetchRequest alloc] init] autorelease];

NSEntityDescription *entitySetsCards = [NSEntityDescription entityForName:@"EntitySetsCards" inManagedObjectContext:context];
//NSEntityDescription *entityRelCardsAnswersNotes = [NSEntityDescription entityForName:@"EntityRelCardsAnswersNotes" inManagedObjectContext:context];
setEntity:entityCard];
[fetchREntitySetsCards setEntity:entitySetsCards];
//[fetchREntityRelCardsAnswersNotes setEntity:entityRelCardsAnswersNotes];

NSArray *fetchedObjSetsCards = [context executeFetchRequest:fetchREntitySetsCards error:&error];
//The error is here--->
//NSArray *fetchedObjRelCardsAnswersNotes = [context executeFetchRequest:fetchREntityRelCardsAnswersNotes error:&error];


//Badges für TabBarItem Inbox setzen
setsCount = [context countForFetchRequest:fetchREntityUserSet error: &error];
cardsCount = [context countForFetchRequest:fetchREntityCard error: &error];

最佳答案

听起来很奇怪,但是当主线程过载时我有同样的行为。

内存使用足够优化:仪器显示没有泄漏,实时内存约为 2Mb,在设备上运行时没有内存警告,所有大量分配都在自动释放池等内部完成。

但是在主线程上将数据存储到数据库(使用核心数据)的过程非常庞大。像这样将存储代码移动到后台进程

dispatch_async(dispatch_get_global_queue
(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
BOOL result = NO;
result = [[DataManager sharedInstance] storeGuestsToDB];
dispatch_async(dispatch_get_main_queue(), ^{
//finalization
}
}

解决了我的问题。

关于ios - Malloc 错误 "can' t 分配区域“失败,错误代码为 12。知道如何解决这个问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8477236/

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