XML Parser Asyncronous操作

时间:2018-03-26 06:26:07

标签: swift

我目前正在以xml格式接收数据,并使用XMLParser将数据解析为更有用的数据。我的困境在于我的UICollectionView。我正在渲染每个都需要网络请求的单元格,以便检索与特定单元格关联的某些值。唯一的问题是我的UI在此操作期间完全冻结。我试图将每个相关的Object与自己的网络请求绑定,以检索与该对象相关的数据,但无济于事。有没有更好的方法来解决这个问题?

如何在不重载UI线程的情况下向多个单元格发出单独的网络请求..我已经尝试DispatchQueue.global(.background).async { }并使用DispatchQueue.main.async {}返回主线程但是看起来XML解析器仍在执行主线。

1 个答案:

答案 0 :(得分:0)

我明白了。

我将XMLParser.parser()方法放在DispatchQueue.global(.background).async { }中 并在public func parserDidEndDocument(_ parser: XMLParser)内重新加载了collectionView