Ответ здесь состоял в том, чтобы переключиться обратно в основной контекст, прежде чем фоновый контекст сохранит
[self executeSelectorOnMainThread: @selector (deletemainmoc) с объектом: nil waitUntilDone: ДА];
и удалите все объекты. затем, когда он переключается обратно в фоновый поток, он сохраняет данные, а затем вы можете объединиться в чистый контекст.