PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
23961 13/08/27 09:17:55 【解決】ディレクトリを解放致しました By kaza1222
23959 13/08/16 14:12:56 RE(3):OpenFileしたファイルの解放 By ZONE
23958 13/08/08 11:39:05 RE(2):OpenFileしたファイルの解放 By kaza1222
23956 13/07/23 09:50:39 RE(1):OpenFileしたファイルの解放 By asano01
23950 13/06/20 16:02:59 OpenFileしたファイルの解放 By kaza1222

カテゴリ:スクリプトの記述
日付:2013年07月23日 09:50 発信者:asano01
題名:RE(1):OpenFileしたファイルの解放

kaza1222さん、おはようございます。

>お世話になっております。
>大変痛い内容かもしれませんが、質問よろしいでしょうか(汗

>開発環境
>Windows7 32bit Professional SP1
>PB11.5.1 Build5097J

>ある処理で、
>FileOpen →【FileReadEx→dw.SetItem(LineMode!でLoop)】→ FileCloseとした時に、
>FileOpenしたファイルが解放されないという現象が起きています。
>読み込ませているのはCSVファイルです。

>どういうことかと申しますと、
>一連の処理が終了してからファイルの格納されているディレクトリを削除しようとすると、
>プログラムがファイルを使用しているので削除できない
>というメッセージが表示されてディレクトリが削除できないのです。

>アプリを終了させると削除できますので、
>どうやらアプリがファイルを掴んだままになっているようなのですが、
>FileCloseではファイルの解放はしてくれないのでしょうか?
>もしくは別途、解放処理が必要でしょうか?
>こんな記述をしてしまうと解放できない等気をつける事はありますか?
>はたまた、アプリ終了まで掴みっぱなしは仕様だったりしますか?(ないとは思いますが・・・

>FileCloseの戻り値が1で返ってきているのは確認しています。

>この発言?読め?等でも構いません。
>検索スキルがなさすぎてそれらしい内容がHITさせられませんでした。
>申し訳ございません(汗

>すごくマヌケなミスでハマっているのかもしれませんが、
>ご存知の方いらっしゃいましたら、解決に向けての
>アドバイス、ご回答を何卒よろしくお願い致します。


経験からですが。
ファイルを閉じても、少しの間は「つかんだまま」になっていることがあります。
そのため、次の作業(この場合は削除?)の前に、1秒から2秒の「待ち」を
持たせるようにしています。

たぶん、メモリ解放や、システム的に掴んでいるのを解放するのが、POSTイベント的に
動作しているせいだと推測していますが。

参考になれば幸いです。


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS (記載なし)
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.