2010年8月3日火曜日

m001がクソ重くなるわけ

デバッグしてると、Androidや本体の色んな挙動ログを目にする。
見に行かなくてもいいデバイスファイル読みに言ってエラーこいてたり、初期化サービスがタイムアウトしてたり。
それが正常な挙動かどうか判断できないから調べないけど、こういうのが積もり積もってm001の貧弱CPUリソースを食いつぶしてるんだなぁ~としょんぼりな気分にもなる(´・ω・`)

で、m001を使っていて、特に初期起動時やSDカードを刺したときなんかにクソ重くなることはないだろうか?
なんでこんなに重くなるのだろう?と不審に思ってたら、
流れるようなログが。

D/        (   48): *******Update file info work
D/        (   48): /sdcard/DCIM/101MSDCF/DSC00057.JPG
W/WMT_MEDIA(   48): calcFinalDestSize invalid args: dstWidth/dstHeight=(0/0)
I/WMT_MEDIA(   48): H/W jpeg decoding return 0, decode OK(1), scaling OK(1)
D/        (   48): *******Update file info work
D/        (   48): /sdcard/DCIM/101MSDCF/DSC00058.JPG
W/WMT_MEDIA(   48): calcFinalDestSize invalid args: dstWidth/dstHeight=(0/0)
I/WMT_MEDIA(   48): H/W jpeg decoding return 0, decode OK(1), scaling OK(1)
こんなのが延々流れて行った( ゜д゜)
こいつか・・・・

このログを吐いてるプロセスはコレ
   48 root     41024 S    /system/bin/thumbserver
メディアファイルのサムネイルサーバーらしい。

こいつはディレクトリを走査して、メディアファイル(画像、音楽、動画)をみつけると上記ログの処理をするようになっている。
たぶん、サムネイルの生成チェックだとおもう。

たまたま、古いデジカメで使ってたSDカードを、画像を消さずにそのまま作業用に使ってて、ログを取ってるときに気が付いた。
バックグランドの処理とはいえ、この画像が大量にあったりすると、延々、裏で走りっぱなしになるのでとても重い。

よく、マンガ読む端末として使う話を聞くけど、あれって画像ファイルを表示してるんだよね?
もし、ページ数が膨大なら、このバックグランド処理に気をつけたほうがいいかも。

とはいえ、この処理が走るのは最初の1回だけで、あとはSDカードを抜き差ししても再度走ることはないみたい。
だから、最初(初めてSD刺したときなど)は重いけど、しばらくすれば処理が終わり以降は軽くなるだろう。

もちろん、ファームを入れ替えたらやり直しだけどね( ゜Д゜)

0 件のコメント:

コメントを投稿