[英]How Linq's GroupBy method has a deferred execution?
(我假设我们只讨论LINQ to Objects。)
它仍然延迟,直到你开始要求结果,它根本不会读取源集合。 但是,是的,一旦你要求第一个结果,它确实会读取整个集合。 它只读取一次源,它只询问每个元素的分组键一次。 正如您所怀疑的那样,所有结果都会缓存在内存中。
我关于GroupBy的Edulinq博客文章 (Edulinq基本上是为了教育而重新实现LINQ to Objects)显示了一个示例实现,尽管就ToLookup
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.