public void SyncDictionaries(CyberDictionary referenceList) { var removeKeys = Keys.Where((k) => !referenceList.ContainsKey(k)); foreach (var k in removeKeys) { Remove(k); } }
public void Add(CyberDictionary data, bool resync = false) { object lockObject = new object(); Parallel.ForEach(data, (d) => { lock (lockObject) { Add(d.Key, d.Value); } }); if (resync) { SyncDictionaries(data); } }