[戻る] 最新記事| 前後の記事|

- 以下は、記事NO. 12374 に関する 返信フォーム です -
メモリリーク? 投稿者 : ロンド(fl1-122-134-98-35.iba.mesh.ad.jp)
- 2009/06/10(Wed) 09:29 No.12374
 


今作っているゲームを長時間プレイしているとメモリが肥大化していることに気づいたので色々調査してみました。

どうやら、$projectManager.loadPage()でページを移動する際にメモリが全部開放されていないようです。
Tonyuにはガベージコレクションが実装されているようなのですが、メモリが少なくならないと実行されないらしく、PCのメモリがいっぱいいっぱいにならないと実行してくれません。

ページ移動する際にオブジェクトを全部Dieしたり、clearAllValues()(プログラム内で使うのはマズいらしいですが)を呼んだりしましたが、駄目でした。

私が検証した限りでは、新規プロジェクトを作成し、SecretCharを作成、そのオブジェクトに

extends SecretChar;
wait(10); // 任意
$projectManager.loadPage($page_index); 

を記述し実行するだけでメモリが肥大化していきました。
最終的にはTonyu.exeの使用メモリが1GBを越え、メモリ不足のエラーが出て停止も実行も不能に・・。

$projectManager.loadPage()を呼んだときにメモリを増やさないようにする方法はないのでしょうか。


Re: メモリリーク? 投稿者 : Triangle Ld.(softbank219014226155.bbtec.net)
- 2009/06/13(Sat) 22:17 No.12389
 
もしかしたらこれをどうにかすることで高速化しそうですね。
ただ、現状ではhogeさん以外がTonyuの内部をいじることはできないため、hogeさんがこの記事に、反応してくれることを望みます。


Re: メモリリーク? 投稿者 : たく(ntchba126209.chba.nt.adsl.ppp.infoweb.ne.jp)
- 2009/06/14(Sun) 14:09 No.12403
 
私も前々からガベージコレクションの動きが気になっていました。
それとページを移動したら全てのオブジェクトを削除する機能などを実装してほしいです。

次バージョンではメモリ回りを強化してほしいですね。


おなまえ
Eメール
タイトル
メッセージ
推薦記事
添付File
削除キー (自分の記事を削除時に使用。英数字で8文字以内)
文字色