public void RemoveCore(OpCore removed) { if (removed == Lookup) return; Cores.LockWriting(delegate() { foreach (OpCore core in Cores) if (core == removed) { Cores.Remove(core); break; } }); CheckLookup(); }