2013-07-04 11 views
0

當我的用戶登錄時,我有多個:最好的辦法等待多個getObjectsAtPath完成

[[RKObjectManager sharedManager] 
    getObjectsAtPath:path 
    parameters:nil<br/> success: 
     ^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) { 

現在,我想等他們都完成,顯示下一個頁面。我想過把它們放到另一個裏面,然後從塊中返回,直到它到達最後一個,但是這似乎消除了進行異步調用的目的。

我想過有一個字典,我在一個特定部分完成後將鍵設置爲YES和NO,並等待所有鍵設置爲YES,但這似乎很容易出現鎖定/併發問題。

那麼,有什麼想法做到這一點?!

謝謝!

回答

0

字典路徑應該工作,不應該有任何線程問題,因爲成功&錯誤回調都在主線程上運行。

或者你可以使用一個簡單的計數器,如果你不關心哪些完成,哪些不是。

另外,您可以使用RKObjectManageroperationQueue併爲您在每一個成功的塊,如果任何任務仍有待完成(儘管你需要考慮的有效性,如果你使用的是sharedManager多少其他的事情可能對同時排隊)。

+0

非常感謝! – abisson