在 javascript 长时间执行时避免 chrome "pages unresponsive"

Avoid chrome "pages unresponsive" upon javascript long execution

我有一个 javascript LONG 执行过程(以及拥有它的原因)。如何避免 in javascript 客户端计算机上的消息?我读了一些关于 --disable-hang-monitor,但它是一个命令行参数或设置,而不是 javascript(另外,我读到它并不总是有效)

假设您正在进行无法分解为更小块的复杂计算,网络工作者似乎是我的解决方案。 这是在单独线程中 运行 代码的 javascript 机制,但您必须通过消息传递与该线程(称为工作线程)进行通信: https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers

var myWorker = new Worker('worker.js');
first.onchange = function() {
  myWorker.postMessage([first.value,second.value]);
  console.log('Message posted to worker');
}

second.onchange = function() {
  myWorker.postMessage([first.value,second.value]);
  console.log('Message posted to worker');
}

myWorker.onmessage = function(e) {
  result.textContent = e.data;
  console.log('Message received from worker');
}

在工人中:

onmessage = function(e) {
  console.log('Message received from main script');
  var workerResult = 'Result: ' + (e.data[0] * e.data[1]);
  console.log('Posting message back to main script');
  postMessage(workerResult);
}