1
一個蘋果公司的網站上讀取數據,還有的建議圖案使用GCD隊列,而不是鎖:GCD隊列,而不是鎖:對於泰伯維的的cellForRowAtIndexPath
// Create queue early
queue = dispatch_queue_create("com.example.tweets", NULL);
// executed main thread
- (NSArray *)getTweets
{
__block NSArray *a;
dispatch_sync(queue, ^{
a = [tweets copyTweets];
});
return a;
}
// executed on background thread
- (void)addTweet:(Tweet *)tw
{
dispatch_async(queue, ^{
[tweets addTweet:tw];
});
}
你如何處理與鎖和關鍵部分與GCD當你有一個生產者線程一次添加大量推文,而不是一個接一個,你需要一次讀取一條推文給UITableView的cellForRowAtIndexPath?
如果您在每次「讀取」中保留「同步」,是不是會導致大量不必要的數據塊?這真的寫了一段時間,但經常閱讀場景..