我有这个系统,有两个应用程序 A 和 B。有多个 B 实例正在运行。应用程序 A 和 B 不直接相互通信。他们共享同一个文件夹。
应用程序 A 将一个文件复制到一个文件夹,应用程序 B 的实例将该文件复制到它自己的临时文件夹并开始处理。这里的问题是:应用程序 B 有许多实例。可能发生的情况是,并非应用程序 B 的所有实例都没有将文件复制到自己的临时文件夹中,而应用程序 A 正在复制一个新文件以覆盖以前的文件一。
应用程序 A 和 B 是用 C# 编写的。由于应用程序 A 不知道 B 运行了多少个实例,因此我遇到了阻止 A 启动复制过程的问题,而 B 的其他实例仍需要将文件复制到其临时文件夹。