Jul 01, 2003

戻りました

ポスト @ 0:00:00 | Palmware

引き続きPsDBですが、ファイルの読込み時間を短縮しました。・・・というより、正確には、やっとこさVer.0.2と同等に戻ったというところです。

プログラム的にはほとんど変えていないのに、何でVer0.3は遅かったのか?旧バージョンと徹底比較(?)して分かったことがあったので、以下、自分のメモとして書いておきます。ってことで、読まないで下さい(+_+)\バキッ!

◇ ◇ ◇

原因は”StrLen”という文字列の長さを調べる関数でした。

別にそれ自体が悪い訳では無くて、使い方が悪いだけなんですけど。

データ読込みの処理としては、外部メモリにあるファイルの中身をパームのメモリに読込んで、それを先頭から見ていって「,」(コンマ)が有ったらそこまでを1つのデータとして格納する、ということを繰り返しているだけです(基本的に)。ただし、この処理をデータの個数だけ繰り返すので、1つ時間のかかる関数があるとその効果(?)はテキメンです。

で、その時間のかかる処理ってのが”StrLen”だったというわけです。

文字数が少なければそれほど問題にはならないのですが、読込んだファイルの中身全部の文字数を調べるなんてことを毎回やっていたので、えらい時間がかかっていたわけです。

それで、この処理を無くしたところ、ビックリするくらい早くなった(当社比)というのが、ことの顛末。てか、無くせるくらいなら始めから入れるなって話ですが、必要だと思ったんだから仕方無い・・・(--;)

こういうのって、単純に関数の問題じゃなくて、関数に渡す変数が問題になってくるので、後からだとなかなか気付かないもんなんです。

ということで、プログラムは難しいという話でした。(そうか?)

Trackback

No Trackbacks

Track from Your Website

http://palm.jove21.com/trackback/tb.php?id=247
(言及リンクのないトラックバックは無視されます)

Comment

No Comments

Post Your Comment


(Smile) (Wink) (Laugh) (Foot in mouth) (Frown) (Gasp) (Cool) (Tongue)

*は入力必須です。E-Mailは公開されません。