4

iOSでのxml解析の最適化のヒントとガイドラインを探しています。現在、プロジェクトの1つでKissXMLを使用して、約50Hzのメッセージを解析しています。このレートでは、比較的短いメッセージ(約10要素)でもメッセージを処理するための高い処理負荷がはっきりとわかります。

最適化戦略の1つは、もちろん「適切な」パーサーを選択することです。iOSで使用可能なパーサーの詳細な比較については、http://www.raywenderlich.com/553/how-to-chose-the-best-xml-parser-for-your-iphone-projectを参照してください

ただし、現在、ペイロードによって最適化してパフォーマンスを可能な限り向上させる方法に関する一般的なガイドラインとヒントを調査しようとしています。私は専門家がこれについていくつかの発言をすることを願っています!個々のまたは部分的なヒントは非常に高く評価されています。

4

1 に答える 1

0

XML の解析に直接関係しないヒントについては、次のタスクを実行するのに役立ちます。

  1. バックグラウンド スレッドで解析を行うと、簡単に解決できます。GCD を使用すると、スレッドの優先順位も定義できます。
  2. このApple ドキュメントのテクニックを使用できます。14ページに次のように書かれています。

methodForSelector: を使用して動的バインディングを回避すると、メッセージングに必要な時間のほとんどを節約できます。ただし、上記の for ループのように、特定のメッセージが何度も繰り返される場合にのみ、節約が重要になります。

オブジェクトの配列に値を設定する際にこの手法を実際に使用したところ、0.7 秒の改善が得られました。それほど多くはないかもしれませんが、より重くて反復的なタスクでは、違いがあると思います.

于 2012-06-08T11:29:22.880 に答える