Home Manual Reference Source Test Repository
import {Scheduler} from '@reactivex/rxjs/es6/Scheduler.js'
public class | source

Scheduler

Direct Subclass:

es6/scheduler/AsyncScheduler.js~AsyncScheduler

Indirect Subclass:

es6/scheduler/AnimationFrameScheduler.js~AnimationFrameScheduler, es6/scheduler/AsapScheduler.js~AsapScheduler, es6/scheduler/QueueScheduler.js~QueueScheduler, es6/testing/TestScheduler.js~TestScheduler, es6/scheduler/VirtualTimeScheduler.js~VirtualTimeScheduler

用来安排任务并调度执行的执行上下文和数据结构。通过获取方法 now() 提供 虚拟时间的概念。

调度器的每个工作单元被称为 Action.

class Scheduler {
  now(): number;
  schedule(work, delay?, state?): Subscription;
}

Test:

Method Summary

Public Methods
public

schedule(work: function(state: ?T): ?Subscription, delay: number, state: T): Subscription

调度并执行 work 函数。如果指定了 delay 参数,那么根据此参数可能会在未来某个时间点发生。 可以传递一些上下文对象,state,该对象将会被传递给 work 函数。 给定的参数将作为一个动作对象存储在一个行动队列。

Public Methods

public schedule(work: function(state: ?T): ?Subscription, delay: number, state: T): Subscription source

调度并执行 work 函数。如果指定了 delay 参数,那么根据此参数可能会在未来某个时间点发生。 可以传递一些上下文对象,state,该对象将会被传递给 work 函数。 给定的参数将作为一个动作对象存储在一个行动队列。

Params:

NameTypeAttributeDescription
work function(state: ?T): ?Subscription

代表任务的函数,或者某些可以被调度器执行 的工作单元。

delay number
  • optional

在执行任务之前的等待时间,时间单位是隐式的,由调度器本身定义。

state T
  • optional

当调度器调用 work 函数时使用时的一些上下文数据。

Return:

Subscription

该 subscription 是为了能够退订已调度工作。