Forums: Open Discussion (Thread #2671)

メモリリーク? (2003-05-15 08:29 by Anonymous #4797)

「バイナリモードでファイルを2個オープンし(1=r,2=w)、
ファイル1からreadlnで読んだデータをregexp正規表現デミリタをもちいてsplit抽出したデータを整形してwritelnでファイル2に書き出す」
というスクリプトを作ってみたのですが、DMSHostで実行すると、メモリ消費量がうなぎのぼりに増えていき、スクリプトの処理が途中で止まってしまいます(多分
メモリオーバーフローで強制終了されていると思うのですが)。
#ファイル1が数kB~数10KBのときは大丈夫なのですが
#2~3MBになると確実に止まります。

ひょっとしてメモリリークでは、と思うのですが。

Reply to #4797×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

RE: メモリリーク? (2003-05-15 13:42 by preneco #4798)

似たようなスクリプトを書いて、いろいろ調べてみると問題がありそうな部分が見つかりました。
速度面などを考えて修正するとなると、私から見れば、ちょっと時間がかかりそうな部分っぽいです。

Wolfyさんと相談してみます。
Reply to #4797

Reply to #4798×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

RE: メモリリーク? (2003-05-20 20:16 by gaogao #4822)

ども修正しました。
TJEngine.EvalStatementの最後の方です。
0.3.5は今月中にはリリースします。

4Mほどのファイルを試してみたんですが、かなーり時間がかかりますね。
速度については現バージョンではこれ以上の改善は難しいので、次期バージョンで仮想マシンにして改善予定です。
Reply to #4798

Reply to #4822×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login