0

ユーザーが指定された数のオブジェクトでアプリを再起動できるように、リセットボタン付きのJavaアプレットを作成しています。リセットボタンをクリックすると、定義したこのメソッドが呼び出されます。

 public void reload(int new_number){
   init_num_objects =  new_number;
   this.destroy();
   this.init();
 }

このボタンは、技術的には私が望むことを正確に実行します。initが呼び出す変数の値を変更し、アプレットを再起動します。

public void init(){
  load_objects(init_num_objects);
}

問題は、ユーザーがリセットボタンをクリックする回数が増えるほど、プログラム(およびその結果としてユーザーのコンピューター)の速度が低下することです。これは、前のプロセスからメモリスペースをクリアせずに、アプレットが毎回リロードしているようです。クライアントマシンの速度を落とさずに、プログラムを完全に閉じて再起動する方法はありますか?

4

1 に答える 1

2

毎回情報が蓄積されないようにアプレットをリセットするにはどうすればよいですか?

// in the applet..
this.getAppletContext().showDocument( this.getDocumentBase() );

JVMはstop()&をdestroy()自動的に呼び出し、ページを更新し、andを呼び出しinit()ますstart()。ドキュメントのベースURLを変更して、「count」のパラメータを含めます。JSを使用してパラメーターを読み取り、それに応じて新しいアプレット要素を書き込みます。

アプレットがJVMによって自動的に呼び出されることを目的としたメソッドを呼び出すときに、問題が発生するのは驚きではありません。

于 2012-08-04T22:28:13.187 に答える