国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

[Oracle] 淺談Lock與Latch

2024-08-29 13:56:53
字體:
來源:轉載
供稿:網友

首先談談它們的共同點吧:它們本質上都是一種對資源的獨占鎖定,都是由并發引起(如果數據庫只有一個session,就談不上鎖定)。

接著著重談談它們的不同點:

首先,它們的目的不一樣,enqueue (即Lock,Oracle官方文檔混合使用這兩個名詞,在等待事件里,可以看到大量的enqueue,其實就是lock)是為了解決業務層面的數據爭用,而latch是為了解決內存資源的爭用。

其次,它們的運行方式不一樣,enqueue采用排隊方式,先到先得,而latch的競爭近乎無序,以一種隨機的方式,先到不一定先得,得靠搶,而且它還以一種時間片輪訓的方式,不會一直霸占,即時還沒運行完,時間片一到也。

第三,會話持有的時長不一樣,enqueue根據業務情況,可能會持有較長時間,而latch通常非常短。第四,引起的原因不一樣,enqueue太多通常是業務設計的問題,而latch過多,一般是數據庫層面的問題(如未使用綁定變量、表或索引熱塊等)。

[Oracle] 淺談Lock與Latch


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 章丘市| 黎川县| 历史| 高陵县| 乡城县| 三亚市| 平塘县| 黄浦区| 天等县| 桑日县| 通海县| 南岸区| 邯郸市| 湖州市| 陇西县| 福建省| 象山县| 洛宁县| 福鼎市| 绍兴市| 沁水县| 阳泉市| 景东| 新津县| 广德县| 新营市| 邛崃市| 读书| 凤冈县| 沙坪坝区| 望都县| 三穗县| 贵阳市| 叙永县| 宜君县| 微山县| 乌拉特后旗| 迁安市| 南部县| 江华| 宜都市|