2

ステージから常に追加および削除している配列に多くの表示オブジェクトがあります。削除すると、それらはもう使用されません。

displayObject が表示リストになく、イベント リスナーがないことを考慮すると、配列から削除するために splice を使用すると、ガベージ コレクションが実行されますか?

最初にオブジェクトを null にした方が安全ですか?

myArray[2] = null;
myArray.splice(2,1);
4

2 に答える 2

5

への参照が残っていない限り、DisplayObjectそうです。 を使用して配列から削除するspliceか、 に設定するだけでnull、ガベージ コレクションの候補になることができます。

更新:アレイから削除する前に項目を設定することnullは冗長であり、違いはありません。

于 2011-10-09T06:56:47.993 に答える
1

より良いパフォーマンスが必要な場合は、多数のオブジェクトを作成して配列に入れるのではなく、プールを使用することをお勧めします。本当に遅い splice() 操作の代わりに、リンクされたリストの実装を使用してください。

于 2011-10-09T23:06:59.830 に答える