鍍金池/ 問答/C#  Linux  HTML/ C#下多線程更新數(shù)據(jù)庫如何保持一致性

C#下多線程更新數(shù)據(jù)庫如何保持一致性

IIS部署的系統(tǒng),會員有儲值,消費(fèi)等操作,如果多個客戶端同時調(diào)用上述操作,如何保證不會產(chǎn)生錯誤數(shù)據(jù)。

目前我用加鎖的方式 但是多客戶端調(diào)用消費(fèi)操作時,會等待,導(dǎo)致效率低下。

是否是因我使用鎖的方式不合適,或是有其他的解決辦法,多線程并發(fā)問題經(jīng)驗(yàn)較少,望大家指教。

回答
編輯回答
喜歡你

Linq 的 DataContext 一次過解決 transaction, 臟讀等問題。
還不用自己寫一行代碼。。
https://msdn.microsoft.com/en...

2017年12月24日 05:30
編輯回答
陌顏

多線程并發(fā)是一個比較大的問題,這里最簡單的方案是采用數(shù)據(jù)庫的事務(wù)一致性,將需要進(jìn)行的操作包裝在一個事務(wù)中構(gòu)成一個原子操作。
日常使用中,加鎖產(chǎn)生的影響完全看加鎖區(qū)域的執(zhí)行效率,具體的情況也需要根據(jù)實(shí)際的測量為準(zhǔn),一般情況下,最受影響的是數(shù)據(jù)庫的執(zhí)行效率。

2017年8月8日 16:24