0

ゲーム内で「画像」のテクスチャを何度も変更する必要があります。

 Image image;
 stage1.AddActor(image);
 image = new Image(texture1);
 image = new Image(texture2);
 image = new Image(texture1);
 image = new Image(texture2);
 ...

それが正しいか?ガーベードをメモリに収集しますか?次のようないくつかの画像を使用するのは快適ではありません。

image1=new Image(texture1);
image2=new Image(texture2);
image1.visible=true;
image2.visible=false;
...
image1.visible=false;
image2.visible=true;
....

ありがとう。

4

2 に答える 2

2

はい:

Image image;
image = new Image(texture1);
image = new Image(texture2); //new Image(texture1) can now be GC'ed

ただし、到達不能な場合にのみガベージ コレクションが行われることに注意してください。したがって、new Image(texture1)たとえばリストに参照がある場合、ガベージコレクターがその仕事をするのを防ぎます。

于 2012-08-27T15:42:06.657 に答える
1
 Image image;
 image = new Image(texture1);
 image = new Image(texture2);
 image = new Image(texture1);
 image = new Image(texture2);

image = new Image(texture2);上記の場合、インスタンス new Image(texture1);は到達不能であると想定してGCの対象となるため、より良いアプローチです 。

GC が発生し、オブジェクトが GC されるときは、JVM の責任です。

于 2012-08-27T15:41:47.247 に答える