我有一個類似的方法:「performBlockAndWait:」塊不執行
- (void)handleUpdate
{
dispatch_sync(dispatch_get_main_queue(), ^{
NSArray *objectIDs = [self.objectsInMainContext valueForKeyPath:@"objectID"];
[self.privateContext performBlockAndWait: ^{
// Some processing
}];
});
}
我叫mainContext
關聯到主隊列,並privateContext
關聯到一個專用隊列,是mainContext
的孩子。這種方法是從privateContext
的私有隊列調用,而且它不是nil
達到performBlockAndWait:
呼叫時,但執行不進入塊既不達到此方法後的任何代碼...
我該怎麼辦在這裏失蹤?
在此先感謝
編輯:我得到在Xcode中沒有錯誤,我已經在performBlockAndWait:
塊內,調用此方法後代碼中設置斷點只是沒有達到。
編輯2:我校正代碼段,我沒有訪問mainContext
但關聯到mainContext
對象的數組。
任何特定的原因,當你已經在私人環境中的第一個地方時,你爲什麼得到主要上下文來獲取對象ID? – Mundi
@Mundi對不起,該行是錯誤的...我編輯問題 – AppsDev
@Mundi我需要將'mainContext'中的對象傳遞給這個子上下文來執行我的更新。 – AppsDev