javascript中的多线程
javascript中是否可以使用多线程? 这是我JSP页面的javascript部分。 我有4个if条件。4 if条件下的copde将运行4个诊断测试。但我想同时运行它们。可能吗javascript中的多线程,javascript,multithreading,Javascript,Multithreading,javascript中是否可以使用多线程? 这是我JSP页面的javascript部分。 我有4个if条件。4 if条件下的copde将运行4个诊断测试。但我想同时运行它们。可能吗 if(document.getElementById("VoiceNode").style.display=="block" && document.getElementById("voiceTest-0").style.display=="none"){ a
if(document.getElementById("VoiceNode").style.display=="block" && document.getElementById("voiceTest-0").style.display=="none"){
alert("calling voice test");
document.getElementById("voiceTest-0").style.display="block";
kbdOnnetVoiceTestAjaxCall.init('<%=contextPath%>','<%=Service.getServiceID()%>','<%=Service.getInventory().getTelephoneNumber()%>','<%=Service.getInventory().getPort()%>','<%=Service.getInventory().getDslam()%>','<%=Service.getInventory().getSlot()%>','${KBDResultsTimeout}','true')
document.getElementById("moreVoice").style.display="block";
alert("exiting voice test");
}
if(document.getElementById("sessionTest-0").style.display=="none"){
document.getElementById("sessionTest-0").style.display="block";
kbdOnnetSessionTestAjaxCall.init('<%=contextPath%>','<%=Service.getServiceID()%>','<%=Service.getInventory().getTelephoneNumber()%>','<%=Service.getInventory().getPort()%>','<%=Service.getInventory().getDslam()%>','<%=Service.getInventory().getSlot()%>','${KBDResultsTimeout}','true')
document.getElementById("moreSession").style.display="block";
}
if(document.getElementById("lineTest-0").style.display=="none"){
document.getElementById("lineTest-0").style.display="block";
kbdOnnetLineTestAjaxCall.init('<%=contextPath%>','<%=Service.getServiceID()%>','<%=Service.getInventory().getTelephoneNumber()%>','<%=Service.getInventory().getPort()%>','<%=Service.getInventory().getDslam()%>','<%=Service.getInventory().getSlot()%>','${KBDResultsTimeout}','true')
document.getElementById("moreLine").style.display="block";
}
if (document.getElementById("syncTest-0").style.display=="none"){
document.getElementById("syncTest-0").style.display="block";
kbdOnnetSyncTestAjaxCall.init('<%=contextPath%>','<%=Service.getServiceID()%>','<%=Service.getInventory().getTelephoneNumber()%>','<%=Service.getInventory().getPort()%>','<%=Service.getInventory().getDslam()%>','<%=Service.getInventory().getSlot()%>','${KBDResultsTimeout}','true')
document.getElementById("moreSync").style.display="block";
}
if(document.getElementById(“VoiceNode”).style.display==“block”和&document.getElementById(“voiceTest-0”).style.display==“无”){
警报(“呼叫语音测试”);
document.getElementById(“voiceTest-0”).style.display=“block”;
KBDOnnetVoiceTestaXCall.init(“”,“”,“”,“”,“${KBDResultsTimeout},'true'))
document.getElementById(“moreVoice”).style.display=“block”;
警报(“退出语音测试”);
}
if(document.getElementById(“sessionTest-0”).style.display==“无”){
document.getElementById(“sessionTest-0”).style.display=“block”;
kbdonnetsessionestajaxcall.init(“”、“”、“”、“”、“${KBDResultsTimeout}、'true'))
document.getElementById(“moreSession”).style.display=“block”;
}
if(document.getElementById(“lineTest-0”).style.display==“无”){
document.getElementById(“lineTest-0”).style.display=“block”;
kbdOnnetLineTestAjaxCall.init(“”、“”、“”、“”、“${KBDResultsTimeout}”和“true”)
document.getElementById(“moreLine”).style.display=“block”;
}
if(document.getElementById(“syncTest-0”).style.display==“无”){
document.getElementById(“syncTest-0”).style.display=“block”;
KBDOnnetSyncTestaXCall.init(“”,“”,“”,“”,“${KBDResultsTimeout},'true'))
document.getElementById(“moreSync”).style.display=“block”;
}
否
您可以在事件循环中重新安排执行顺序。但它们不可能同时发生 JavaScript是单线程的。但是
- 您可以使用
模拟“线程化”。这通常用于在密集操作期间防止“UI阻塞”setTimeout
- 或者使用最近的
两个字。网络工作者@starbeamrainbowlabs,这是两个词Web workers是浏览器功能,与javascript无关。当你创建一个新的Web worker时,浏览器(不是javascript本身)会在与“窗口”线程分离的线程中运行它。我一直认为你可以使用Web worker来多线程处理你的javascript。如果我们不能在javascript中执行多线程,那么JS游戏引擎是如何工作的?