Skip to main content
使用 Bun.spawn() 来衍生子进程。当衍生第二个 bun 进程时,可以在两个进程之间打开一个直接的进程间通信(IPC)通道。
要与 Node.js 进程通信,请在 Bun.spawn 中设置 serialization: "json"。使用 process.execPath 获取当前运行中的 bun 可执行文件的路径。
parent.ts

父进程通过返回的 Subprocess 实例上的 .send() 方法向子进程发送消息。ipc 处理函数也会将子进程作为第二个参数接收。
parent.ts

子进程通过 process.send() 向父进程发送消息,并通过 process.on("message") 接收消息。这与 Node.js 中 child_process.fork() 使用的 API 相同。
child.ts

默认情况下,消息使用 JSC 的 serialize API 进行序列化,该 API 支持 structuredClone 支持的所有内容,包括字符串、类型数组和对象。这不支持对象所有权的转移。
child.ts

参见 子进程