2005/01/29(土)

日記

 不具合発生中の某機種実機が届く。さっそくチェック。うむ、確かに変だ。resume 処理に入る直前でよく落ちる。

 寝転んで天井見上げたり、ネットで調査したり、ドキュメント読んだり、コンパイルしてはあげて動かしてみたり……いろいろ悩んでみるのだが、不具合修正ならず。

 エラー情報が乏しいんだよな。例外が発生するわけじゃないみたい。Illegal state. というメッセージは出るのだが、curClass, curMethod (カレントクラスとメソッド?)として表示されるのは毎回違う部分。やっぱメモリ関係だよなあ。

 さらなるメモリ削減に取り組む。できる限りの static 化は当然として、その他、複数にわけてた変数を1個にまとめたり、ファイル処理の仕方を少し変えたり……しかし解決せず。

 やっぱ、音関係がうまくいってないんだよな。サウンドの再生停止を繰り返すうちにダメになるっぽいからな。

 あ、ひょっとして。ごりごりごり。あ、直った。やった。

 getAudioPresenter() しては、使用後、null とし(当然、リソースの dispose もやってます)、また、同じ変数に対して、getAudioPresenter() する……ってことを繰り返してたんだけど、どうも一部機種ではこういうやり方ではリソースがきちんと解放されないっぽい。気をつけましょう。

 まあ、一日苦労したけど、解決したからよしとしよう。

 で、食事はあぶらかすの味噌汁+ブリアラ大根。

 結局朝まで仕事。

 就寝前にお風呂へ。湯船で眠ってしまい、顔が水面に当たっては目を覚ますということを繰り返す。