加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 使用RX(Reactive Extensions)创建20个延迟30毫秒的事件

发布时间:2020-12-15 23:22:39 所属栏目:百科 来源:网络整理
导读:我想制作一个快速爆发的火码,它会以30毫秒的间隔称我为20次. 这是我到目前为止所尝试的: Observable.Repeat(20).Delay(TimeSpan.FromMilliseconds(30)).Subscribe() 这对我来说似乎是合乎逻辑的解决方案,但我的应用程序正在崩溃,我认为它是因为它永远不会停
我想制作一个快速爆发的火码,它会以30毫秒的间隔称我为20次.

这是我到目前为止所尝试的:

Observable.Repeat(20).Delay(TimeSpan.FromMilliseconds(30)).Subscribe()

这对我来说似乎是合乎逻辑的解决方案,但我的应用程序正在崩溃,我认为它是因为它永远不会停止.

使用UniRx我该如何实现?
https://rx.codeplex.com/

解决方法

看起来你想要 Observable.IntervalObservable.Take.

Observable.Interval(TimeSpan.FromMilliseconds(30)).Take(20)

此外,您使用的方法并不是您认为他们正在做的事情.您应该在尝试之前阅读文档.

> observable.Repeat(20)只是为每个订阅的观察者反复调用observer.OnNext(20),永远.
> observable.Delay(TimeSpan.FromMilliseconds(30))只是将整个序列的时间移动到比其他情况晚30毫秒.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读