リモートディレクトリに読み書きする必要がある(複数のコンピュータからの)複数のアプリケーションのロックとしてファイルの一時ディレクトリを使用したいが、この問題は扱われていない。誰かが2回の同時通話で何が起こるかを知っていますか?異なるマシンからCreateDirectoryまたはCreateFileを同時に呼び出すとどうなりますか?
http://msdn.microsoft.com/en-us/library/windows/desktop/aa363855%28v=vs.85%29.aspx
注:私は最高になり、データベースを使用して知っているが、これは私の場合は不可能です。
少なくとも堅牢な方法では動作しません... 2番目の呼び出しは単純に成功します...あなたが記述するシナリオは、「スレッドセーフ」IMHOとはまったく関係ありません...リモートディレクトリ(ネットワーク/ SMB共有?)を使用しているため、特定の動作はOSのバージョンなどによって異なります。 – Yahia
これはスレッドの安全性に関するものではありません。あなたが尋ねていることは、2つのプログラムが同時に同じファイル/ディレクトリを作成しようとする場合です。例については、http://stackoverflow.com/questions/2600471/how-to-lock-a-file-and-avoid-readings-while-its-writingを参照してください。 – dash
私はWIN32 APIについてはわかりませんが、関数のマニュアルページやドキュメントページにスレッドセーフであると明示的に示されていない場合は、私はその関数が安全ではないと考えています。申し訳ありませんが、すべてのことより安全です。 –