.ToLookup<TSource, TKey>返回一个ILookup<TKey, TSource>.ILookup<TKey, TSource>还实现了接口IEnumerable<IGrouping<TKey, TSource>>.
.GroupBy<TSource, TKey>返回一个IEnumerable<IGrouping<Tkey, TSource>>.
ILookup具有方便的索引器属性,因此它可以以字典(或类似查找)的方式使用,而GroupBy则不能.GroupBy没有索引器是一种痛苦的工作; 几乎是你可以引用返回对象的唯一方法是循环它(或使用另一个LINQ扩展方法).换句话说,任何GroupBy工作的情况下,ToLookup也会起作用.
这一切让我想到为什么我会打扰GroupBy?为什么要存在?
Rx GroupByUntil文档声明
当出现与回收组具有相同键值的新元素时,将使用新的生命周期请求重新生成该组.
我对这段代码有疑问.
myObservable.GroupByUntil(
selectKey,
g => g.Throttle( selectTimer(g.Key),
throttlingScheduler))
Run Code Online (Sandbox Code Playgroud)
selectTimer当组使用相同组密钥的新元素"重生"时,不会调用我的限制计时器.相反,元素灌浆继续使用相同的节流计时器.
当有相同键值的元素出现时,有没有办法刷新节流定时器?