ファイルをMoveする際、
ファイルがロック(他のプロセスでつかまれている)されているか
判断するベストプラクティスは?
[案]
1. File.MoveをTry~CatchしIOExceptionをCatchする?
2. なんらかの方法で事前チェックする?
なんらかの方法を調査する
1は手抜きかな^^;
フィードバック
# re: [要調査メモ]ファイルMove時にロック中なのかどうかを判断する方法
2007/07/10 11:10 by
1しかありませんよ。
さらに失敗したら昇格してためして、それでもだめならだめ。
# re: [要調査メモ]ファイルMove時にロック中なのかどうかを判断する方法
2007/07/10 11:31 by
ファイルが実在する(元、先とも)とか、ReadOnly属性が付いているか程度なら
事前チェックできますけど、それ以上(部分的にロックされている、削除できないなど)は、1ですね。
ファイル操作は、原則 Try & Error です。
メモリアロケートもそうだけど(確保できなかったら...で考慮する)、ハード操作系はほとんどがこのパターンですよ。
# re: [要調査メモ]ファイルMove時にロック中なのかどうかを判断する方法
2007/07/10 11:32 by
> 1しかありませんよ。
です。
扱うのは、application 内部の private memory じゃ無いのですから他からちょっかい出される可能性があります。
つまり、check した後、ちょっかい出されたらどうなるかわかりますよね?
Application 内部の private memory にしたって、multi thread なら同様の問題が発生します。
# re: [要調査メモ]ファイルMove時にロック中なのかどうかを判断する方法
2007/07/11 1:18 by
>中様
ありがとうございます。
昇格して試してって部分はVistaならって事かな?
調べてみます。
>とっちゃん様
ありがとうございます。
ファイル操作(を含むハード操作系)は原則Try&Error
肝に銘じておきます。
>ちゃっぴ様
ありがとうございます。
確かに事前チェックできても、
その瞬間にどうか保障はできませんね。
# sjdBBVLusgjxYO
2011/12/22 20:43 by
A26i6D I subscribed to RSS, but for some reason, the messages are written in the form of some hieroglyph (How can it be corrected?!...
# yIDvrUUVtbQpuaAH
2011/12/27 18:39 by
Very amusing thoughts, well told, everything is in its place:D
# IKRgoCBqqAKbikP
2014/07/19 11:46 by
pwIjXl Im obliged for the blog article. Keep writing.
# XxNtpqGbTNrPa
2014/08/28 8:58 by
rq4Pr3 I'd have to check with you here. Which is not one thing I usually do! I get pleasure from studying a put up that may make individuals think. Also, thanks for permitting me to comment!