我有一個程序(部署到每個用戶計算機的副本),以便用戶將文件存儲在具有壓縮(CAB文件)的集中式文件服務器上。如何鎖定多用戶文件管理系統中的文件
添加文件時,用戶需要將文件提取到自己的磁盤上,添加文件並將其壓縮回服務器。因此,如果兩個用戶同時處理相同的壓縮文件,則稍後上載的文件將會更早更新並導致數據丟失。
我的策略是防止這種情況出現在用戶提取壓縮文件之前,程序會檢查服務器上是否存在指定的臨時文件。如果沒有,程序會創建這樣的臨時文件以防止其他用戶的干擾,並且會在上傳後刪除臨時文件;如果是,程序將等待,直到臨時文件被刪除。
有沒有更好的方法來做到這一點?並且會經常創建和刪除空文件損壞磁盤?
我不知道如果我使用鏈接中的示例鎖定它,是否仍然可以提取壓縮文件。 – Bolu 2011-05-18 13:58:55
@Bolu - 你有沒有試過。 – 2011-05-18 14:24:59
@Ramhound,我不能在不釋放鎖的情況下更新壓縮文件。 – Bolu 2011-05-18 14:58:48