Ну, возможно, вы перепутали свои объекты, контекст и потоки. NSManagedObjectContext
не является поточно-ориентированным. Чтобы удалить объект из контекста, вам нужно сначала извлечь объект «в» контекст, и я думаю, что ваш управляемый объект был выбран другим MOC. Не видя больше кода, я не могу сказать.
Однако это относительно легкое исправление. В вашем цикле for, сделайте это вместо
for (ErgTimes *ergTimes in time){
NSMutableArray *temp = [[NSMutableArray alloc] initWithObjects:ergTimes.Twok, nil];
NSManagedObject *eventToDelete = [managedObjectContext objectWithID:[[temp objectAtIndex:0] objectID]];
[managedObjectContext deleteObject:eventToDelete];
}
Для этого нужно получить объект в MOC, который вы используете в данный момент, используя его objectID, который является поточно-ориентированным.