C# 多線程對(duì)資源讀寫時(shí)如何控制的方法
1、多個(gè)線程對(duì)同一個(gè)隊(duì)列進(jìn)行讀寫操作,要注意進(jìn)行讀寫控制,某個(gè)線程在讀取的時(shí)候,不允許其它線程讀、寫;某個(gè)線程在寫的時(shí)候,不允許其它線程進(jìn)行讀寫。
2、對(duì)字典進(jìn)行讀寫時(shí),進(jìn)行獨(dú)占式訪問定義一個(gè)字典,再定義用于指定用于對(duì)此字典進(jìn)行讀寫控制的ReaderWriterLockSlim對(duì)象
ReaderWriterLockSlim類的說明
如下圖所示,在讀取前,執(zhí)行EnterReadLock()進(jìn)入讀取鎖定模式,讀完后,執(zhí)行ExitReadLock()退出讀取模式。如果是要寫入,則執(zhí)行該鎖定對(duì)象的EnterWriteLock()、ExitWriteLock()方法。這樣實(shí)現(xiàn)鎖定對(duì)象與字典的對(duì)應(yīng)。
到此這篇關(guān)于C# 多線程對(duì)資源讀寫時(shí)如何控制的方法的文章就介紹到這了,更多相關(guān)C# 多線程讀寫控制內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#控制臺(tái)程序如何發(fā)布到服務(wù)器Linux上運(yùn)行
這篇文章主要給大家介紹了關(guān)于C#控制臺(tái)程序如何發(fā)布到服務(wù)器Linux上運(yùn)行的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2021-11-11C#實(shí)現(xiàn)單鏈表(線性表)完整實(shí)例
這篇文章主要介紹了C#實(shí)現(xiàn)單鏈表(線性表)的方法,結(jié)合完整實(shí)例形式分析了單鏈表的原理、實(shí)現(xiàn)方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-06-06