Skip to content

引入

ts
import { Scheduler  } from 't-comm';

// 不支持 tree-shaking 的项目
import { Scheduler } from 't-comm/lib/scheduler/index';

// 只支持 ESM 的项目
import { Scheduler } from 't-comm/es/scheduler/index';

Scheduler

参数

new Scheduler([maxConcurrency])

异步任务调度器,同一时间只能执行 n 个任务

ParamTypeDefaultDescription
[maxConcurrency]number2

最多同时执行的任务数目,默认为 2

Example

ts
let scheduler;

export async function login({
  userId,
  userSig,
  tim,
}: {
  userId: string;
  userSig: string;
  tim: IChatSDK;
}) {
  if (!scheduler) {
    scheduler = new Scheduler(1);
  }

  return await scheduler.add(innerLogin.bind(null, {
    userId,
    userSig,
    tim,
  }));
}