2011-07-19 277 views
1

我正在開發類似於內置的照片應用程序的iPad應用程序。我已經使用NSThread detachNewThreadSelector加載圖像,並設法將加載時間從12秒減少到6秒,仍然不符合我的預期。我懷疑,假設文件夾中有20個圖像,則會創建20個線程來加載圖像。現在我正在考慮一次限制它爲5個線程,並且下一組線程應該在加載前5個圖像之後才啓動。有人能教我如何做到這一點?非常感謝!異步圖像加載

回答

3

我不會長久的:你應該明確地看看這個example from Apple。你會看到光。

3

這聽起來像是一個完美的任務NSOperationQueue

首先,創建並配置NSOperationQueue,並將其保存在ivar或全局變量中。然後,使用相同的選擇器,目標和對象創建一個NSInvocationOperation,而不是使用detachNewThreadSelector:toTarget:withObject:,並將其添加到隊列中。當線程變爲可用時,隊列將處理在後臺線程池上啓動操作。