Để tạo một wrapper đồng bộ (thread-safe) cho SortedList, ta sử dụng phương thức tĩnh SortedList.Synchronized. Dưới đây là các ví dụ.
Ví dụ 1
using System;
using System.Collections;
public class Demo {
public static void Main(){
SortedList sortedList = new SortedList();
sortedList.Add("1", "Tom");
sortedList.Add("2", "Ryan");
sortedList.Add("3", "Nathan");
Console.WriteLine("SortedList elements...");
foreach(DictionaryEntry d in sortedList){
Console.WriteLine("Key = " + d.Key + ", Value = " + d.Value);
}
SortedList sortedList2 = SortedList.Synchronized(sortedList);
Console.WriteLine("SortedList đã đồng bộ? = " + sortedList2.IsSynchronized);
}
}
Kết quả
SortedList elements... Key = 1, Value = Tom Key = 2, Value = Ryan Key = 3, Value = Nathan SortedList đã đồng bộ? = True
Ví dụ 2
using System;
using System.Collections;
public class Demo {
public static void Main(){
SortedList sortedList = new SortedList();
sortedList.Add("1", "AB");
sortedList.Add("2", "CD");
sortedList.Add("3", "EF");
sortedList.Add("4", "GH");
sortedList.Add("5", "IJ");
sortedList.Add("6", "KL");
Console.WriteLine("SortedList elements...");
foreach(DictionaryEntry d in sortedList){
Console.WriteLine("Key = " + d.Key + ", Value = " + d.Value);
}
Console.WriteLine("SortedList đã đồng bộ? = " + sortedList.IsSynchronized);
}
}
Kết quả
SortedList elements... Key = 1, Value = AB Key = 2, Value = CD Key = 3, Value = EF Key = 4, Value = GH Key = 5, Value = IJ Key = 6, Value = KL SortedList đã đồng bộ? = False