ios - 分配 : *** error for object: Invalid pointer dequeued from free list *** set a breakpoint in malloc_error_break to debug in Magical record IOS

标签 ios objective-c core-data magicalrecord

当我尝试使用 MR_importValuesForKeysWithObject 插入数据时,我的应用程序崩溃了:

malloc: error for object 0x174291c0e: Invalid pointer dequeued from free list.
Set a breakpoint in malloc_error_break to debug.

崩溃的代码是:

+ (NSArray *) MR_executeFetchRequest:(NSFetchRequest *)request inContext:(NSManagedObjectContext *)context
{
    __block NSArray *results = nil;
    [context performBlockAndWait:^{

        NSError *error = nil;

        results = [context executeFetchRequest:request error:&error];

        if (results == nil) 
        {
            [MagicalRecord handleErrors:error];
        }

    }];
    return results; 
}

堆栈框架 -

#0  0x000000018ac3a014 in __pthread_kill ()
#1  0x000000018ad02450 in pthread_kill ()
#2  0x000000018abae3e0 in abort ()
#3  0x000000018ac7ea38 in nanozone_error ()
#4  0x000000018ac80bf0 in _nano_malloc_check_clear ()
#5  0x000000018ac7fbb4 in nano_calloc ()
#6  0x000000018ac71180 in malloc_zone_calloc ()
#7  0x000000018ac710c4 in calloc ()
#8  0x000000018a6af510 in class_createInstance ()
#9  0x000000018a6bdae4 in _objc_rootAlloc ()
#10 0x000000018df40298 in -[NSSQLGenerator generateSelectIntermediateInContext:] ()
#11 0x000000018df3f584 in -[NSSQLGenerator generateIntermediatesForFetchInContext:countOnly:] ()
#12 0x000000018e04c314 in -[NSSQLGenerator newSQLStatementForRequest:ignoreInheritance:countOnly:nestingLevel:nestIsWhereScoped:requestContext:] ()
#13 0x000000018e04e940 in -[NSSQLiteAdapter _statementForFetchRequestContext:ignoreInheritance:countOnly:nestingLevel:] ()
#14 0x000000018e04eaf4 in -[NSSQLiteAdapter newSelectStatementWithFetchRequestContext:ignoreInheritance:] ()
#15 0x000000018e0fb820 in -[NSSQLFetchRequestContext _createStatement] ()
#16 0x000000018e0fb790 in -[NSSQLFetchRequestContext fetchStatement] ()
#17 0x000000018e0fc8fc in -[NSSQLFetchRequestContext executeRequestUsingConnection:] ()
#18 0x000000018e010e98 in __52-[NSSQLDefaultConnectionManager handleStoreRequest:]_block_invoke ()
#19 0x0000000101dc121c in _dispatch_client_callout ()
#20 0x0000000101dcde38 in _dispatch_barrier_sync_f_invoke ()
#21 0x000000018e010d34 in -[NSSQLDefaultConnectionManager handleStoreRequest:] ()
#22 0x000000018e0d6ec4 in -[NSSQLCoreDispatchManager routeStoreRequest:] ()
#23 0x000000018e03fd04 in -[NSSQLCore dispatchRequest:withRetries:] ()
#24 0x000000018e03abc4 in -[NSSQLCore processFetchRequest:inContext:] ()
#25 0x000000018df3d518 in -[NSSQLCore executeRequest:withContext:error:] ()
#26 0x000000018e01d844 in __65-[NSPersistentStoreCoordinator executeRequest:withContext:error:]_block_invoke ()
#27 0x000000018e015f90 in -[NSPersistentStoreCoordinator _routeHeavyweightBlock:] ()
#28 0x000000018df3d1cc in -[NSPersistentStoreCoordinator executeRequest:withContext:error:] ()
#29 0x000000018df3bbf4 in -[NSManagedObjectContext executeFetchRequest:error:] ()
#30 0x000000018dfecb90 in -[NSManagedObjectContext(_NestedContextSupport) _parentObjectsForFetchRequest:inContext:error:] ()
#31 0x000000018dfed398 in __82-[NSManagedObjectContext(_NestedContextSupport) executeRequest:withContext:error:]_block_invoke ()
#32 0x000000018dfef640 in internalBlockToNSManagedObjectContextPerform ()
#33 0x0000000101dc121c in _dispatch_client_callout ()
#34 0x0000000101dcde38 in _dispatch_barrier_sync_f_invoke ()
#35 0x000000018dfdc9b0 in _perform ()
#36 0x000000018dfed088 in -[NSManagedObjectContext(_NestedContextSupport) executeRequest:withContext:error:] ()
#37 0x000000018df3bbf4 in -[NSManagedObjectContext executeFetchRequest:error:] ()
#38 0x00000001013df24c in __67+[NSManagedObject(MagicalRecord) MR_executeFetchRequest:inContext:]_block_invoke at /Users/Desktop/Core Data/glider/Pods/MagicalRecord/MagicalRecord/Categories/NSManagedObject/NSManagedObject+MagicalRecord.m:54
#39 0x000000018dfe1b70 in developerSubmittedBlockToNSManagedObjectContextPerform ()
#40 0x0000000101dc121c in _dispatch_client_callout ()
#41 0x0000000101dd1e5c in _dispatch_barrier_sync_f_slow_invoke ()
#42 0x0000000101dc121c in _dispatch_client_callout ()
#43 0x0000000101dc6284 in _dispatch_main_queue_callback_4CF ()
#44 0x000000018bc17f2c in __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ ()
#45 0x000000018bc15b18 in __CFRunLoopRun ()
#46 0x000000018bb44048 in CFRunLoopRunSpecific ()
#47 0x000000018d5ca198 in GSEventRunModal ()
#48 0x0000000191b302fc in -[UIApplication _run] ()
#49 0x0000000191b2b034 in UIApplicationMain ()

请给我一些提示。

最佳答案

如果以数组中的对象的形式获取响应数据,那么我们应该使用它很好

let defaultcontext = NSManagedObjectContext.MR_defaultContext()
Entityname.MR_importFromArray(listOfObjectData: [[NSObject : AnyObject]], inContext:defaultcontext) 
defaultcontext.MR_saveToPersistentStoreAndWait()

不是通过迭代一个对象来插入然后保存它

关于ios - 分配 : *** error for object: Invalid pointer dequeued from free list *** set a breakpoint in malloc_error_break to debug in Magical record IOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40933880/

相关文章:

javascript - 从 Objective-C 代码调用 javascript

ios - 核心数据死锁

iphone - 当我尝试在这些时间点执行核心数据初始化时,为什么会失败?

swift - 无法将类型 'UserInfoEntity!.Type' 的值转换为预期的参数类型 'NSEntityDescription'

ios - 将 UTC 时间转换为当前时区时间时转换为错误的时间

ios - 使用数组添加 Realm 对象

ios - 单击注释两次并在第二次单击时执行操作

ios - 在 View Controller 之间传递 NS Core Data 上下文引用

ios - 我们如何知道 ios 应用程序是否在上次启动时崩溃了?

ios - cgcontext严重错误: draw bezierPath in initwithcoder?