C#에서 ArrayList의 동기화를 위해 C#에서 ArrayList.Synchronized 메서드를 사용하십시오.
C#에서 SyncRoot 속성을 사용하여 컬렉션을 잠그는 예를 살펴보겠습니다 -
ArrayList arr = new ArrayList(); lock(arr.SyncRoot) { foreach (object ele in arr) { } }
다음은 ArrayList의 동기화 상태를 확인하는 전체 예제입니다 -
예
using System; using System.Collections; public class Demo { public static void Main() { ArrayList arr1 = new ArrayList(); arr1.Add("One"); arr1.Add("Two"); arr1.Add("Three"); arr1.Add("Four"); arr1.Add("Five"); arr1.Add("Six"); arr1.Add("Seven"); arr1.Add("Eight"); // set synchronized wrapper around the ArrayList ArrayList arr2 = ArrayList.Synchronized(arr1); // sychronization status of first ArrayList Console.WriteLine("arr1 = {0}", arr1.IsSynchronized ? " synchronized" : "not synchronized"); // sychronization status of second ArrayList Console.WriteLine("arr2 = {0}", arr2.IsSynchronized ? "synchronized" : "not synchronized"); } }
출력
arr1 = not synchronized arr2 = synchronized