我得到一個非常間歇性的「目錄不空」錯誤試圖從c#代碼中刪除目錄,但是當我看,目錄似乎是空的。錯誤「目錄不爲空。」當目錄是empy
實際情況是這樣的:進程A使用同步.Net遠程調用調用進程B,進程B從目錄中刪除文件,然後返回到進程A刪除目錄本身。該磁盤是本地連接的NTFS磁盤(可能是SATA)。
我想知道是否有可能的競爭條件與NTFS,當你有兩個進程合作在這種方式,其中進程B的刪除調用沒有完全刷新到文件系統?
當然,更明顯的答案是當前目錄真的不是空的,而其他東西在我看它之前就清空了,但我沒有看到在當前應用程序中會發生這種情況,因爲沒有其他的過程會刪除文件。
您是否嘗試過使用'Directory.Delete(target_dir,true);'來遞歸移除目錄和所有文件? – chridam
你有沒有試過用刪除鍵刪除它? –
@Weyland,對不起,我應該明確說明,是的,我買它的時間,刪除它沒有問題 – Andy