ジェネリックな各種リストをスレッドセーフに扱う
その1
System.Collections.ICollectionインターフェイスにキャストすることで、SyncRootにアクセス可能。これでlockを行うことができる。
//こんな感じ var list = new List<String>(); lock (((System.Collections.ICollection)list).SyncRoot) { list.Add("アイテム1"); }
System.Collections.ICollectionインターフェイスにキャストすることで、SyncRootにアクセス可能。これでlockを行うことができる。
//こんな感じ var list = new List<String>(); lock (((System.Collections.ICollection)list).SyncRoot) { list.Add("アイテム1"); }