Class: RequestScheduler

RequestScheduler

new RequestScheduler()

跟踪活动请求的数量并确定传入请求的优先级。

Members

static debugShowStatisticsBoolean

为true时,每帧都会向控制台记录统计数据。

Default Value:
false

static maximumRequestsNumber

同时活动请求的最大数量。未经节流的请求不遵守此限制。

Default Value:
50

static maximumRequestsPerServerNumber

每台服务器的最大同时活动请求数。未经节流的请求不遵守此限制。

Default Value:
18

static priorityHeapLengthNumber

优先级堆的最大大小。这限制了按优先级排序的请求数量。仅适用于尚未激活的请求。

Default Value:
20

(static, readonly) statisticsObject

返回请求调度程序使用的统计数据。

static throttleRequestsBoolean

指定请求调度程序是对收到的请求进行控制,还是让浏览器在其控制下对请求进行排队。

Default Value:
true

Methods

static getServerKey(url){String}

从给定的 URL 获取服务器的密钥。

Name Type Description
url String

url。

Returns:
Type Description
String 服务器的密钥。

static request(request){Promise|undefined}

发出请求。如果请求。Throttle为false,请求立即发送。否则,请求将在发送之前按优先级排队和排序。

Name Type Description
request Request

请求对象。

Returns:
Type Description
Promise | undefined 对所请求数据的Promise,如果此请求没有足够高的优先级来发出,则未定义。

static update()

按优先级对请求进行排序,并启动请求。