code:
public static class EnumerableExtensions { public static T Find<T>(this IEnumerable<T> enumerable, Predicate<T> match) { return enumerable.Find(match); } }
调用:
ErpDic.Value.AsParallel().Find(x => x.code == code)
ErpDic是个 private Lazy<List<sys_dict_common>> ErpDic;
为什么这个 扩展方法find 进入了无限递归呢?不明白。
enumerable.Find(match);这里不就是在调用public static T Find<T>(this IEnumerable<T> enumerable, Predicate<T> match)....
而且要是你这么写不递归.你就把这扩展方法删了也一样能调用明白不.
1.递归了,因为你写了这个方法
2.没递归,那你就不用写这方法.
结论:你冷静下来好好想想人生
你冷静下来好好想想人生......
这一句不认同。其他的说的对。
哈哈 有道理。
IEnumerable<T>没有Find方法,你这里这样用肯定是递归了。
很简单,你认为不是递归,你把 Find方法改名为Find1,你看你方法体里面的方法能找到引用不,说明还是自己调用 自己,还没有退出机制,就是无限递归