1. 程式人生 > >Redis學習筆記~分佈鎖的使用

Redis學習筆記~分佈鎖的使用

回到目錄

分佈鎖主要用在多程序共同訪問同一個資源時候,用來保持同一時間段只能有一個程序執行,同時避免了併發衝突的出現,這在很多場景都會用到,像秒殺庫存,抽獎庫存,多操作者處理一家公司等。

void TestLock()
 {
  //程式碼段鎖定,只允許一下程序訪問,超時時間100秒,注意,它鎖的是key
  if (redisManager.Instance.GetDatabase().LockTake("redislockqueeu", "1", TimeSpan.FromMilliseconds(100)))
   {
     try
     {
       Console.WriteLine(
"正在處理……"); Thread.Sleep(1000); } catch (Exception) { throw; } finally { //處理結束後釋放redis程序鎖,否則還要阻塞100毫秒 redisManager.Instance.GetDatabase().LockRelease("PrizeKey", "prize"); } } Console.WriteLine("redis正被其它程序使用"); }

你可以寫個併成的程式去測試一下,然後把它封裝一下,方便其它開發人員直接使用!

感謝閱讀!

回到目錄