JavaFXで非常に単純なGoボードゲームを作成しています。私はアプリケーションでメモリ使用量が増えたことに気がつき、不要なものをすべて減らした後、の最小値の例でも、残業が巨額になりました。画像を描画するときのJavafxメモリ使用量の増加
は、ここでは、コードです:私はgc.drawImageラインを削除すると
import javafx.animation.AnimationTimer;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.image.Image;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
Group root = new Group();
primaryStage.setTitle("Hello World");
primaryStage.setScene(new Scene(root, 600, 600));
Canvas canvas = new Canvas(600, 600);
Image bg = new Image("resources/images/background2.jpg", 600, 600, false, false);
root.getChildren().add(canvas);
GraphicsContext gc = canvas.getGraphicsContext2D();
new AnimationTimer() {
@Override
public void handle(long l) {
gc.drawImage(bg, 0, 0, 600, 600, 0, 0, 600, 600);
}
}.start();
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
問題は発生しませんが、それはないソリューション、明らかに、です。
Btw。私は、OpenJDK 8でArch Linux 64ビットを使用しています。
私が理解していないこと:あなたはJavaFxの部分が責任があると確信していますか?あなたは、あなたの記憶がどこに費やされているのかを把握するために何らかの種類の記憶プロファイリングを行いましたか? – GhostCat
上記の内容はプログラム全体です。それ以上のことはないので、動作していないJavaFx以外のものがあるかどうかはわかりません。 –
それが実際にプログラム全体であれば、欠けている部分を追加してクラスを完成させたいと思っています。 "ほぼ完成"はまだありません[mcve] – GhostCat