18 个版本 (10 个破坏性版本)
0.73.2 | 2022 年 8 月 21 日 |
---|---|
0.68.0 | 2022 年 7 月 10 日 |
#20 在 #ops
每月 52 次下载
5MB
124K SLoC
deno_runtime
包
这是 Deno CLI 的精简版本,删除了 TypeScript 集成和各种工具(如 lint 和 doc)。基本上只使用 Deno 的操作系统绑定(ops)进行 JavaScript 执行。
稳定性
此包使用经过实战检验的模块构建,这些模块最初在 deno
包中,但此包的 API 可能会快速且破坏性地更改。
MainWorker
此包的主要 API 是 MainWorker
。 MainWorker
是一个结构,封装了 deno_core::JsRuntime
,并使用一组 ops 来实现 Deno
命名空间。
当创建 MainWorker
时,实现者必须调用 MainWorker::bootstrap
以准备 JS 运行时以供使用。
MainWorker
可高度配置,并允许自定义运行时的大多数属性
- 模块加载实现
- 错误格式化
- 支持源映射
- 支持 V8 检查器和 Chrome 开发者工具调试器
- HTTP 客户端用户代理,CA 证书
- 随机数生成器种子
Worker
网页 API
deno_runtime
带有对 Worker
网页 API 的支持。 Worker
API 使用 WebWorker
结构实现。
当创建新的 MainWorker
实例时,实现者必须提供一个回调函数,该函数在创建新的 Worker
实例时使用。
所有 WebWorker
实例都是 MainWorker
的后代,负责设置与子工作进程的通信。每个 WebWorker
都会为该工作进程创建一个全新的 OS 线程。
依赖关系
~158MB
~3.5M SLoC