使用 postMessage() 传输


【Transferring with postMessage()】

可以使用 <MessagePort> 转移 <WritableStream> 实例。

【A <WritableStream> instance can be transferred using a <MessagePort>.】

const stream = new WritableStream(getWritableSinkSomehow());

const { port1, port2 } = new MessageChannel();

port1.onmessage = ({ data }) => {
  data.getWriter().write('hello');
};

port2.postMessage(stream, [stream]);