@colyseus/timer

中文文档
2.0.3发布于 2026/01/10MITTypeScriptESM + CJS近 30 天下载 57.9万

时间事件绑定在 @colyseus/ hour

中文使用文档
文档目录3 节
  1. 为什么?
  2. API 密码
  3. 许可证

@colyseus/timer (英语)

与时间挂钩的事件 colyseus/ 小时。 。 。 .

ClockTimer 是一个子类 Clock,增加了处理超时和 依赖的间隔 Clock滴答声.

为什么?

一旦内置 setTimeout 财务报告和审定财务报表 setInterval 依赖CPU负载, 函数可能 延迟一个出乎意料的执行时间 。 绑在钟表上 保证以精确的方式执行.

因此,理想的情况是,所有计时器都有一个CPU时钟,然后按顺序执行.

见引自 W3C 计时器规格数字 :

这个API并不能保证定时器会如期发射. 延迟 由于CPU负载,其他任务等原因,预计会出现.

然而,它确实保证命令“该计时器是否应根据上次拨打电话以来的已过期时间执行?”.

经典计时器,如果我们有 setInterval 联 合 国 0ms 它将以调用回调( 如 A LOT) 来填充事件循环计时器队列, 如果我们还有另一个 1000ms 间隔将仅在许多 0ms 调用被执行 。 事实并非如此 ClockTimer,因为它环绕所有计时器 和检查,如果它们应该被执行, 更有可能 1000ms 回调会及时执行.

您也可以打电话 .tick() 手动检查所有计时器 在一个特定的重要时间.

其他的酷事是,你管理所有的时间器在一个地方,因此你可以立刻清除所有的时间器. 例如,当游戏结束时,您想要清除所有计时器时, 这一点是有用的 。 或当使用这些无关紧要.

API 密码

import { ClockTimer } from "@colyseus/timer";
const timer = new ClockTimer();

时钟

  • setInterval(handler, time, ...args) - > (中文) Delayed
  • setTimeout(handler, time, ...args) - > (中文) Delayed
  • duration(ms: number) - > (中文) Promise<void> - 在主动功能或承诺中等待一段时间的方便方法。 详见相关联的JSdoc.
  • clear() - 清除所有间隔和超时现象,并放弃与下列各方建立的任何承诺: duration。 。 。 .

延迟

  • clear() - > (中文) void - 清除超时/中断
  • reset() - > (中文) void - 重新设定过去的时间
  • active - > (中文) Boolean - 它还在活动吗?
  • pause() - > (中文) void - 暂停执行
  • resume() - > (中文) void - 继续处决
  • paused - > (中文) Boolean - 暂停了吗?

许可证

麻省理工学院

版本与发布记录

@colyseus/timer 共发布 8 个版本,首次发布于 2024/07/18;过去 12 个月发布了 4 个版本。

版本发布日期距今
2.0.3latest2026/01/109 个月前
2.0.22026/01/109 个月前
2.0.12026/01/109 个月前
2.0.02026/01/0910 个月前
1.0.32025/10/151.1 年前
1.0.22025/10/151.1 年前

关于 @colyseus/timer 的常见问题

@colyseus/timer 是什么?

时间事件绑定在 @colyseus/ hour

如何安装 @colyseus/timer?

在项目目录运行 npm install @colyseus/timer,或使用 pnpm add / yarn add / bun add。

@colyseus/timer 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@colyseus/timer 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@colyseus/timer 可以商用吗?

@colyseus/timer 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@colyseus/timer 的下载量有多少?

根据 npm 官方下载统计,@colyseus/timer 在 2026/10/11 – 2026/11/09 这 30 天内被下载 579,488 次,日均约 19,316 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@colyseus/timer 还在维护吗?

最新版本 2.0.3 发布于 2026/01/10(9 个月前);至今共发布 8 个版本,其中过去 12 个月发布了 4 个;首次发布于 2024/07/18。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。