2008-09-23 53 views
4

有時,我們會嘗試「拒絕訪問」錯誤,因爲防病毒在我們的程序想要寫入/重命名/複製它的同時處理文件。防病毒和文件訪問衝突:良好的編程習慣?

這種情況很少見,但讓我不高興,因爲我沒有找到好的辦法來處理:技術上我們的反應是改變我們的源代碼來實現一種重試機制......但我們並不滿足。 ...。那味道有點......我們不能告訴我們的客戶「請關閉您的防病毒軟件,讓我們的軟件正常工作」...

因此,如果您已經嘗試過這些問題,請告訴我如何你處理了。

謝謝!

回答

3

說「打開關閉」的確很少。這不會在很多辦公室中飛行,所以我們已經完成了你所說的:建立一個重試隊列。

被鎖定的文件被添加到隊列中。當原始操作結束時,我們暫停1秒鐘並順序彈出隊列。第二次失敗的文件將被添加到第二個隊列中,第一次完成後,我們將等待3秒鐘,然後彈出第二個隊列。

報告第二個隊列失敗(第三次嘗試)的文件。