有什么办法可以实现主线程和web worker线程之间的同步通信?我知道通信只能通过异步的 postMessage 进行,但是可以通过任何其他方式(比如使用同步 IndexedDB API)来实现。
问问题
347 次
1 回答
0
不要认为这是可能的,但如果有帮助,您可以考虑使用延迟来实现更清洁的异步流程。
所以如果你有同步流,比如:
var n = 71,
x = checkPrime(71);
alert(x); //display if n is prime or not.
// 可以转换为异步:
var dfd = useWorkerForPrime(71);
dfd.done(function(isPrime) { alert (x); //display if prime })
你从'useWorkerForPrime'返回一个延迟,一旦从工作人员那里收到消息,它就会解决。
更多关于延迟的参考:http ://www.erichynds.com/blog/using-deferreds-in-jquery
于 2013-05-16T20:38:48.020 回答