我想一些GCD融入我的代碼,並發現一個嚴重的瓶頸是我在一個大陣列對象之間進行比較的泡沫。這裏是原始代碼:Objective-C的快速計數冒泡排序
NSUInteger count = [arrayToDoWorkOn count];
for (int i = 0; i < count; i++)
{
for (int j = i + 1; j < count; j++)
{
[[arrayToDoWorkOn objectAtIndex:i] compare:[arrayToDoWorkOn objectAtIndex:j]];
}
}
Get my drift?所以很多的其他的快速列舉的任務可以通過轉換
for (id obj in array)
{
[obj aMessage:stuff];
}
可以很容易地GCD'd:
[array enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop)
{
[obj aMessage:stuff];
}];
有沒有辦法對我先行 - 八九不離十泡-八九不離十算法轉換什麼東西,我可以飼料的GCD塊實施?
這有什麼好做GCD僅幾個街區。 – JeremyP
嘿,無情,如果我的回答回答你的問題,不要忘記標記爲正確的答案! ;) –
WHOOPS。可以發誓我已經做到了。昨天很忙碌。再次感謝。 – Grimless