【发布时间】:2012-09-09 06:01:20
【问题描述】:
我一直在使用 TXMLDocument,并且一直在尝试弄清楚 poAsyncLoad 在 ParseOptions 中的作用。帮助表明它可能会提高大型 XML 文件的性能(它似乎没有)。该名称表明它应该在后台线程中执行操作,但在加载大型 XML 文件时 UI 仍然冻结。
有人知道这是做什么的吗? 我正在使用 Delphi XE3
【问题讨论】:
标签: xml delphi txmldocument
我一直在使用 TXMLDocument,并且一直在尝试弄清楚 poAsyncLoad 在 ParseOptions 中的作用。帮助表明它可能会提高大型 XML 文件的性能(它似乎没有)。该名称表明它应该在后台线程中执行操作,但在加载大型 XML 文件时 UI 仍然冻结。
有人知道这是做什么的吗? 我正在使用 Delphi XE3
【问题讨论】:
标签: xml delphi txmldocument
启用poAsyncLoad 告诉底层DOM 提供程序允许异步加载,但这并不能保证实际使用异步加载。这实际上取决于底层 DOM 提供者的能力。在 Windows 上,默认情况下是 MSXML,它确实支持异步加载,但也许其他因素告诉它不支持。但如果是这样,您还应该为 TXMLDocument.OnAsyncLoad 事件分配一个事件处理程序,以便您可以获得异步状态更新,否则您将不得不定期读取 TXMLDocument.AsyncLoadState 属性。
【讨论】: