我想节制一些吐司消息。我尝试使用缓冲区,但是当我真正想要的是让消息简单地留在流中直到我要它们时,然后我在数组中得到了一堆消息。我最终要做的是用间隔流压缩消息流

var messageStream = Rx.Observable.FromEvent(..., 'click');
var intervalStream = Rx.Observable.interval(5000);
messageStream.Zip(intervalStream, (x,_)=>x).subscribe(showToast(x));


有没有更优雅的方法可以做到这一点?

最佳答案

看看controlled。它使您可以将值排队,等待.request(x) x个值。要谨慎使用,因为这意味着将使用内存来缓冲值,并且内存不是无限的。这可能也是一个不错的阅读:backpressure

关于javascript - 节流无缓冲,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34552829/

10-15 14:29