この問題に関するすべての既知のブログにもかかわらず、私は常にいくつかの結果を疑っています。私の個人的なテストでは、よく言われている標準が最善ではないことが示されています。
ループ内で変数を宣言して、変数をスコープに近づけ、メソッドからの到達を高速化しますが、より多くのメモリを割り当てるか、forスコープ外で宣言して、メモリ割り当てを節約しますが、処理を増やして、離れたインスタンスで反復します。
私の結果は、方法Bの方が(時々)速いことを示しています。これに関する背景を知りたいです。
結果はさまざまであり、ビットブラッシャーの第一人者ではありません。
それで、皆さんはそれについてどう思いますか?
方法A
var object:Object = new Object();
var loop:int = 100000
for (var i:int = 0; i < loop; i++)
{
object = new Object();
object.foo = foo;
object.bar = bar;
}
また
方法B
var loop:int = 100000
for (var i:int = 0; i < loop; i++)
{
var object:Object = new Object()
object.foo = foo;
object.bar = bar;
}