Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 异步图像加载_Objective C_Multithreading_Ipad_Background - Fatal编程技术网

Objective c 异步图像加载

Objective c 异步图像加载,objective-c,multithreading,ipad,background,Objective C,Multithreading,Ipad,Background,我正在开发一个类似于内置照片应用程序的iPad应用程序。我使用NSThread detachNewThreadSelector加载图像,并设法将加载时间从12秒缩短到6秒,但仍然没有达到我的预期。我怀疑,假设一个文件夹中有20个图像,会创建20个线程来加载这些图像。现在我正在考虑一次将其限制为5个线程,并且下一组线程应该仅在加载前5个图像之后启动。有人能告诉我怎么做吗?非常感谢 我不会太久的:你肯定应该仔细看看这个。你会看到光明的。我不会太久的:你肯定应该仔细看看这个。你会看到曙光。这听起来像是

我正在开发一个类似于内置照片应用程序的iPad应用程序。我使用NSThread detachNewThreadSelector加载图像,并设法将加载时间从12秒缩短到6秒,但仍然没有达到我的预期。我怀疑,假设一个文件夹中有20个图像,会创建20个线程来加载这些图像。现在我正在考虑一次将其限制为5个线程,并且下一组线程应该仅在加载前5个图像之后启动。有人能告诉我怎么做吗?非常感谢

我不会太久的:你肯定应该仔细看看这个。你会看到光明的。

我不会太久的:你肯定应该仔细看看这个。你会看到曙光。

这听起来像是一项完美的任务


首先,创建并配置NSOperationQueue,并将其保存在ivar或全局变量中。然后,不要使用detachNewThreadSelector:toTarget:withObject:,而是使用相同的选择器、目标和对象创建一个,并将其添加到队列中。当线程可用时,队列将处理在后台线程池上启动操作的问题。

这听起来是一项完美的任务

首先,创建并配置NSOperationQueue,并将其保存在ivar或全局变量中。然后,不要使用detachNewThreadSelector:toTarget:withObject:,而是使用相同的选择器、目标和对象创建一个,并将其添加到队列中。当线程可用时,队列将处理在后台线程池上启动操作的问题