public override bool Equals(object obj) { var v = obj as CacheItem; if (v == null) return false; return _delegate == v._delegate && _thisType == v._thisType && _ilGen.Equals(v._ilGen); }