2

私は TXMLDocument をいじって、ParseOptions で poAsyncLoad が何をするかを調べようとしました。ヘルプは、大きな XML ファイルでのパフォーマンスが向上する可能性があることを示しています (実際にはそうではありません)。この名前は、バックグラウンド スレッドで実行する必要があることを示していますが、大きな XML ファイルの読み込み中に UI がフリーズします。

これが何をするか知っている人はいますか?Delphi XE3を使用しています

4

1 に答える 1

1

有効poAsyncLoadにすると、非同期読み込みが許可されていることが基になる DOM プロバイダーに通知されますが、非同期読み込みが実際に使用されるという保証はありません。これは、基盤となる DOM プロバイダーの機能に大きく依存します。Windows では、これは既定で MSXML であり、非同期読み込みをサポートしていますが、他の要因がそうしないように指示している可能性があります。ただし、そうである場合は、イベントにイベント ハンドラーを割り当てて、TXMLDocument.OnAsyncLoad非同期のステータス更新を取得できるようにする必要があります。そうしないと、TXMLDocument.AsyncLoadStateプロパティを定期的に読み取る必要があります。

于 2012-09-17T20:59:42.503 に答える