2011-06-01 113 views
1

在iOS应用程序中解析Objective-C中的XML时,何时可以使用主线程,何时应该在后台线程上解析?主线程能否在小文件上处理SAX解析,还是应该全部 XML解析在后台发生?在主线或后台线程上解析iOS XML

+1

解析在后台很好地工作。只要确保当你想要更新UI时,你总是在主线程上执行它。 GCD通过内嵌块实现了这一点。 – 2011-06-01 23:17:20

回答

4

我通常会在后台线程上处理所有数据处理。这确保了UI线程在任何时候都不被我阻止。

4

任何不会调用UIKit(UIView &它是子类)的东西,甚至暗示它可能会呈现在屏幕上,这对于关闭主线程是完全安全的。

我有几个应用程序在后台线程上处理XML。我建议使用一个NSOperation,它将整个XML文档传递给它,允许它完全处理它,或者提供一系列委托方法来通知主线程它的进展。如果你打算使用核心数据,我可以建议my own NSOperation abstract class做后台导入。

事实上,你可以在后台线程上做一些渲染,但你必须非常仔细地选择你的API。

相关问题