다음해명
을 기능과 함께이 동시성 유형을 사용할 수 없습니다당신은 새로운 중첩 된 컨텍스트
예를 들어, NSOperation
서브 클래스 내에서이 작업을 수행 할 수 있기 때문에이 문장은 나에게 아주 이상합니다.
NSManagedObjectContext * localMOC = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSConfinementConcurrencyType];
[localMOC setParentContext:[self mainContext]];
외부에서 mainContext
을 주입 할 수 있으며 유형은 NSMainQueueConcurrencyType
입니다.
내가 누락 된 항목이 있습니까?
흠, 나는 자식 컨텍스트를 추가하고 싶었 기 때문에 개인 큐 유형으로 몇 번 변경해야한다고 확신했습니다. 부모로서 제한된 유형을 사용하는 것에 대해 이상한 행동이나 오류가 발생하고 있음을 확신하십시오. 어떤 이유로 든 이러한 유형의 오류는 매번 발생하지는 않지만 변경 작업을 수행하고 이상한 시간에 나타나면 문제가 발견됩니다. –
그 이상으로 제한 대기열은 컨텍스트가 생성 된 스레드에 의해 액세스되고 변형 될 것으로 예상합니다. 하위 MOC가 다른 스레드에서 변경 사항을 푸시하는 경우, 정의되지 않은 동작을 요청하는 것입니다. – CodaFi
니스. 몇 가지 테스트를 해주셔서 감사합니다. –