0

5 MB のドキュメントの場合、次のクエリはlibxml2評価に 3 秒かかります。物事をスピードアップするために私にできることはありますか?さらに処理するために結果のノードセットが必要なので、 nocountなど.

ありがとう!

descendant::text() | descendant::*
[
self::p or
self::h1 or
self::h2 or
self::h3 or
self::h4 or
self::h5 or
self::h6 or
self::dl or
self::dt or
self::dd or
self::ol or
self::ul or
self::li or
self::dir or
self::address or
self::blockquote or
self::center or
self::del or
self::div or
self::hr or
self::ins or
self::pre
]

編集:

Jens Eratdescendant::node()[self::text() or self::p or ...の提案どおりに使用すると(受け入れられた回答を参照)、速度が大幅に向上しました。元の 2.865330 秒から完璧な 0.164336 秒まで。

4

3 に答える 3

0

--with-threads オプションを有効にして libxml2 をコンパイルしましたか? もしそうなら、最も簡単なことは、より多くのコアを備えたより高速なプロセッサを問題に投入することです

于 2013-08-09T23:02:50.380 に答える