如何在 C# 中獲取對陣列的同步訪問?


若要獲取對陣列的同步訪問,程式碼如下 -

示例

 線上演示

using System;
public class Demo {
   public static void Main() {
      Array intArr = new int[] {5, 10, 15, 20, 25, 30, 35, 40 };
      Console.WriteLine("Integer array...");
      foreach (int i in intArr)
      Console.WriteLine(i);
      Console.WriteLine("After applying lock on array...");
      lock(intArr.SyncRoot) {
         foreach (Object ob in intArr)
         Console.WriteLine(ob);
      }
   }
}

輸出

這將產生以下輸出 -

Integer array...
5
10
15
20
25
30
35
40
After applying lock on array...
5
10
15
20
25
30
35
40

示例

我們來看另一個示例 -

 線上演示

using System;
public class Demo {
   public static void Main() {
      Array strArr = new String[] {"Harry", "Tom", "Kevin", "Ryan", "Katie", "Amy" };
      Console.WriteLine("String array...");
      foreach (string i in strArr)
      Console.WriteLine(i);
      Console.WriteLine("After applying lock on array...");
      lock(strArr.SyncRoot) {
         foreach (Object ob in strArr)
         Console.WriteLine(ob);
      }
   }
}

輸出

這將產生以下輸出 -

String array...
Harry
Tom
Kevin
Ryan
Katie
Amy
After applying lock on array...
Harry
Tom
Kevin
Ryan
Katie
Amy

更新於: 2019 年 12 月 16 日

108 次瀏覽

開啟你的事業

完成課程獲得認證

開始
廣告