Print # でその後のファイルアクセスが重くなる

返信する


答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: Print # でその後のファイルアクセスが重くなる

by hiroko » 2006年8月20日(日) 21:01

過去ログにいくつか関連すると思われるものがあります。
http://www.activebasic.com/forum/viewtopic.php?t=742
http://www.activebasic.com/forum/viewtopic.php?t=707

しかし,いずれも解決策などの提案はないようです。

Print # でその後のファイルアクセスが重くなる

by たかせ » 2006年8月20日(日) 09:47

たかせです。
>ただのお騒がせのようです。
>なんで4.13では問題なかったのかがわかりません。
>どちらが正常なのでしょうか?

いいえ、お騒がせではありません。
同じような現象を僕も確認しています。
たしかに4.13までは問題なかったのですが。

おそらくstring系の内部処理が4.20から変更になったと思います。

input #を使用するとstring系の命令が作られます。
またstring形は変数が更新されるたびに別の領域にわり当てられるのでそのプログラムが実行中メモリが占有されます。
その原因でおそらく処理が重くなると思います。
ちなみに「仮想メモリが不足しました」とメッセージがでたこともありました。

ソースコードがないのでなんともいえませんが。

そこで私はstrring形を使用するのをやめてbyte形やchar形に変更しました。
これがactive basicの本来の使いかたのようです。
データ量が少ないなら問題ありませんが。

PS山本さんへ
お忙しいところ申し訳ありませんが上記の件についてコメントいただければありがたいです。

Print # でその後のファイルアクセスが重くなる

by 佐藤 博志 » 2006年8月19日(土) 10:49

4.13は大丈夫ですが、それ以降5.00も含めて、Print # を浸かってファイルを作り、それをcloseして
ほかのファイルを読んだりすると遅くなっています。
Print #で書き込むデータが多ければ多いほど次のファイルアクセスが重くなっていきます。
Get,Put # を使う限りはそんな現象は起こりません。
バイナリファイル操作にPrint # を使おうと言うのが間違なのかもしれません。
Put # に書き換えようとは思っています。
ただのお騒がせのようです。
なんで4.13では問題なかったのかがわかりません。
どちらが正常なのでしょうか?

ページトップ