03.UniRx序列(Interval、TimeInterval、FrameInterval、FrameTimeInterval)

本文详细介绍了UniRx库中用于时间间隔的Interval、TimeInterval和FrameInterval功能,包括它们的工作原理、使用示例及实际应用场景。通过代码解析展示了如何在不同线程中执行Interval,以及如何利用TimeInterval获取流的执行间隔。此外,还讲解了FrameInterval如何基于帧计算处理结果。文章最后总结了UniRx的基础流与拓展功能流的概念,并提醒读者注意它们的使用区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Interval

间隔一定的时间单位持续给订阅者通知信息,图解
在这里插入图片描述
示例代码

public class No03_Interval : MonoBehaviour
{
   
    void Start()
    {
   
        var intervalStream = Observable.Interval(TimeSpan.FromSeconds(3f), Scheduler.MainThread);
        
        var disposable = intervalStream.Subscribe(Next, Error, Complete);
        disposable.AddTo(this);
    }

    void Next(long times)
    {
   
        Debug.LogFormat("间隔3秒输出,第{0}次", times);
    }

    void Error(Exception ex)
    {
   
        Debug.LogException(ex);
    }

    void Complete()
    {
   
        Debug.LogFormat("Complete");
    }
}

代码解析
Interval第一个参数是时间单位,Scheduler是调度器,表明这个Interval在哪个线程里面来执行
RX默认的调度器拥有的分支调度包括,4个

Scheduler.DefaultSchedulers
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值