【发布时间】:2017-04-20 12:34:42
【问题描述】:
所以我知道这可能是一个长远的目标,但也许有人可以提供帮助。
有什么方法可以异步复制缓冲区吗?可能通过某种方式使用 blob?下面是一个类似于我正在寻找的东西的例子(显然不起作用,只是为了说明)。需要这个才能在客户端工作。
var fromBuffer = new Uint8Array(1056); //just some random data
var bufferToCopyTo;
var req = new XMLHttpRequest();
req.open("GET", "fromBuffer", true);
req.responseType = "blob";
req.onload = function(e) {
bufferToCopyTo = req.response;
};
req.send();
//continue while buffer makes a copy in the background?
【问题讨论】:
-
你到底需要这个做什么?
-
用于客户端多线程。尝试在代码的串行部分运行时复制缓冲区以传递给后台的工作人员。它用于视频解码器
-
我会调查
postMessage和使用结构化克隆算法的朋友。 -
不,因为您根本不会复制缓冲区,而是将其转移到后台工作人员。
-
我确实需要复制,因为没有共享内存。所有工作人员都需要自己的副本来处理
标签: javascript asynchronous blob arraybuffer typed-arrays