当有什么事情需要处理时,如何从主线程通知后台线程



我正在开发一个应用程序,该应用程序可以进行图像处理并显示生成的图像。我使用UIScrollView让用户滚动所有图像,因为图像不是标准的jpg或png,加载需要时间。所以我想使用一个线程来加载图像,然后更新视图。

现在,我在后台线程中使用计时器来检查是否有任何需要加载的图像。但效果不太好。我想知道当主线程中有一些图像需要加载时,是否有方法通知后台线程或任何其他建议?

提前谢谢。

在类中提供一个控制scrollView的方法,让我们调用"processImage"。在后台线程中,当您有图像时,将其发送到UI类,如下所示:

dispatch_async(dispatch_get_main_queue(), ^{ [uiClass processImage:theImage] } );

背景对象应该保留对uiClass的弱引用(在本例中是委托)。其想法是在后台进行图像处理,但将其提供给主线程上的UI类。

最新更新