[問題] Mutex long time lock問題

作者: NIAZ (扁魚)   2015-04-22 18:17:16
情境如下:
我要刪除檔案系統上一個最舊的大型檔案但同時需要寫入新的檔案
目前是用Mutex保護要刪除的檔案,等刪除完成後再繼續寫入新檔案
(因為還有很多條Thread在跑,怕誤用該最舊的檔案所以要保護)
理論上Mutex是不能鎖住長時間的
要避免deadlock
但是因為該檔案太大所以造成刪除的時間過長
另一條Thread要寫入新檔案就被block住
請問有何解法可以同時保護Critical Section但是仍可以讓OS做Context Switch
來達成避免寫入的Thread被刪檔案的Thread block住的問題

Links booklink

Contact Us: admin [ a t ] ucptt.com