好吧,我是 javascript 的新手,听说它是单线程的。在我看来,如果您发出异步请求,它应该启动一个自己的线程来控制服务器是否已经响应。这在 JavaScript 中不起作用。我在想是否有一些内置机制可以保存所有侦听器并调用它们,具体取决于它们“同意”的条件(onreadystatechange)。
这只是一个假设,我想我完全错了。好吧,也许有人可以帮助我?
正如所解释的,只有 javascript 执行本身是单线程的here https://stackoverflow.com/a/11660429/1048572。然而,底层引擎可能会使用更多线程。
因此,HTTP 请求(在浏览器内部深处创建的)可能有自己的线程,但是当发生某些事情(例如响应)时,它会触发一个事件并排队到 JS 任务调度程序中。当前脚本执行结束后,onreadystatechange
函数将被调用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)