1
私はフォームメモリを開放して、そのフォームを空にして、一方から他方へナビゲートしようとしました。CODENAMEONEフォームを解放するには、あるページを他のページにナビゲートするときに、そのコンポーネントをすべて含めますか?
しかし、nullはメモリの解ではありません。一方から他方にナビゲートしながらメモリが増加します。
例:私は1つの重いフォームを持っていて、それから軽いフォームに移動すると、重いフォームで占められていたメモリは、軽いフォームを表示する前に解放され、その後は軽いフォームのメモリを占有する必要があります。
これは私が使用したサンプルコードです。
public class Form1 extends Form {
Form main;
public static void includeForm1(final Form form) {
Form1 form1 = new Form1();
form1.showForm1(form);
}
public void showForm1(Form form){
form = null;
this.main = new Form();
...
addComponent(BorderLayout.CENTER, mainContainer);
....
//Navigate to Form2
Form2.includeForm2(main);
...
this.show();
}
}
public class Form2 extends Form {
Form main;
public static void includeForm2(final Form form) {
Form2 form2 = new Form2();
form2.showForm2(form);
}
public void showForm2(Form form){
form = null;
this.main = new Form();
...
addComponent(BorderLayout.CENTER, mainContainer);
....
//Navigate to Form1
Form2.includeForm1(main);
...
this.show();
}
}
メモリの問題を解決するために必要な変更は何ですか?