如何才能防止併發執行

2022-07-18 10:52:41 字數 1990 閱讀 3097

1樓:匿名使用者

鎖述的概

一. 為什麼要引入鎖

多個使用者同時對資料庫的併發操作時會帶來以下資料不一致的問題:

丟失更新

a,b兩個使用者讀同一資料並進行修改,其中一個使用者的修改結果破壞了另一個修改的結果,比如訂票系統

髒讀a使用者修改了資料,隨後b使用者又讀出該資料,但a使用者因為某些原因取消了對資料的修改,資料恢復原值,此時b得到的資料就與資料庫內的資料產生了不一致

不可重複讀

a使用者讀取資料,隨後b使用者讀出該資料並修改,此時a使用者再讀取資料時發現前後兩次的值不一致

併發控制的主要方法是封鎖,鎖就是在一段時間內禁止使用者做某些操作以避免產生資料不一致

二 鎖的分類

鎖的類別有兩種分法:

1. 從資料庫系統的角度來看:分為獨佔鎖(即排它鎖),共享鎖和更新鎖

ms-sql server 使用以下資源鎖模式。

鎖模式 描述

共享 (s) 用於不更改或不更新資料的操作(只讀操作),如 select 語句。

更新 (u) 用於可更新的資源中。防止當多個會話在讀取、鎖定以及隨後可能進行的資源更新時發生常見形式的死鎖。

排它 (x) 用於資料修改操作,例如 insert、update 或 delete。確保不會同時同一資源進行多重更新。

意向鎖 用於建立鎖的層次結構。意向鎖的型別為:意向共享 (is)、意向排它 (ix) 以及與意向排它共享 (six)。

架構鎖 在執行依賴於表架構的操作時使用。架構鎖的型別為:架構修改 (sch-m) 和架構穩定性 (sch-s)。

大容量更新 (bu) 向表中大容量複製資料並指定了 tablock 提示時使用。

2樓:愛上北極之光

在作業系統中,併發是指一個時間段中有幾個程式都處於已啟動執行到執行完畢之間,且這幾個程式都是在同一個處理機上執行,但任一個時刻點上只有一個程式在處理機上執行。

在關聯式資料庫中,允許多個使用者同時訪問和更改共享資料的程序。sql server 使用鎖定以允許多個使用者同時訪問和更改共享資料而彼此之間不發生衝突。

為什麼要併發,併發有什麼優點?我覺得併發不能提高程式的執行速度

3樓:睡醒的貓頭鷹

在作業系統中,併發是指一個時間段中有幾個程式都處於已啟動執行到執行完畢之間,且這幾個程式都是在同一個處理機上執行,但任一個時刻點上只有一個程式在處理機上執行。

在關聯式資料庫中,允許多個使用者同時訪問和更改共享資料的程序。sql server 使用鎖定以允許多個使用者同時訪問和更改共享資料而彼此之間不發生衝突。

通俗點的解釋 , 一個冰箱 , 一家人在用 ,  最極端的情況 , 一家人在晚餐的時候 同一時間點都要從冰箱裡面拿東西 , 也是排隊拿, 但是交給電腦處理類似的邏輯 ,這就是錯誤的, 併發的存在就是保證這樣的錯誤不會發生 ,

4樓:

併發是對海量資料請求的處理,如果量很少,就沒有意義了。

5樓:匿名使用者

很遺憾,你的想法是錯的,你的比喻也是錯的。

6樓:姬_權

你這是作業系統沒學好

7樓:

在單核處理器上,併發並不能加速任務的完成時間,相反會延後任務的完成。

但是併發讓你有可能同時開多個任務,比如一遍聽歌一遍寫word。

j**a中quartz定時任務的執行如何避免併發

8樓:ij**a學習網

只要在detail的引數里加抄上一句話就行了,把這個baijob設定成有狀態du的job

擴充套件:通過concurrent屬性zhi指定任務的型別,默dao認情況下封裝為無狀態的任務,如果希望目標封裝為有狀態的任務,僅需要將concurrent設定為false就可以了。spring通過名為concurrent的屬性指定任務的型別,能夠更直接地描述到任務執行的方式(有狀態的任務不能併發執行,無狀態的任務可併發執行)

白色衣服如何才能防止變黃,如何防止白色衣服放久了會變黃呢?

1 在洗衣服前,新增固色劑,一件衣服大概需要13 14克,泡2 3分鐘後,再用肥皂清洗乾淨即可。這樣可以保證衣服顏色不容易褪色。2 衣服穿後一定要徹底洗乾淨,儘量不與其他顏色衣服同洗。3 衣服晒乾後,要等衣服徹底涼了以後才能摺疊起來。4 白色的衣服要放在乾燥不潮溼的地方。存放的時候可以用塑料袋密封儲...

如何才能讓貓咪不抓壞沙發,如何防止貓咪抓沙發?

給貓咪腳趾上套個東西 好好的沙bai發被貓咪抓變了 du樣是貓奴們最頭疼的事了,不過 zhi不管怎麼教訓它們dao,版它們似乎還是會繼續權去抓已經千瘡百孔的沙發。其實想要讓貓咪不再抓沙發,主人們就得知道貓咪抓沙發的初衷是什麼。通常情況下,貓咪抓沙發是因為它們想磨爪子,瞭解了貓咪抓沙發的原因後,主人就...

硬碟如何防止格式化,行動硬碟如何設定才能防止格式化

為了防止惡意 非法格式化 修改硬碟資料可以將有關的dos命令改名 或移動到其他目錄中 以後要格式化硬碟時可以再將檔名改回,具體方法是 找到c windows format.exe檔案,將其檔名改為format.txt或移動至其它目錄,如果在 我的電腦 中看不到檔案的副檔名,可以選擇 工具 資料夾選項...