1

関数呼び出しの結果を格納する方が、関数を複数回呼び出すよりも効率的ですか?

例 -

<xsl:variable name="time" select="current-dateTime()"/>
<myTime><xsl:value-of select="$time"/></myTime>
<yourTime><xsl:value-of select="$time"/></yourTime>

よりも

<myTime><xsl:value-of select="current-dateTime()"/></myTime>
<yourTime><xsl:value-of select="current-dateTime()"/></yourTime>
4

2 に答える 2

2

(a) 明らかに関数に依存し、(b) 明らかに XSLT プロセッサに依存します。この種のパフォーマンスに関する質問に対する答えを得る唯一の方法は、それを測定することです。また、測定を行うには、通常、関数を 10000 回呼び出すなどの人為的なことを行う必要があるため、測定も役に立たない場合があります。これを行うと、オプティマイザーは、1 回だけ呼び出した場合とは異なる方法でコードを処理する可能性があります。

于 2013-06-01T20:03:24.330 に答える