异步和同步之间有什么区别?这种区别如何影响请求?
来自 Mozilla 的文章同步和异步请求 https://developer.mozilla.org/en/docs/DOM/XMLHttpRequest/Synchronous_and_Asynchronous_Requests:
XMLHttpRequest 支持同步和异步通信。然而,一般来说,出于性能原因,异步请求应优先于同步请求。
简而言之,同步请求会阻塞代码的执行,并可能泄漏内存和事件。这可能会导致严重的问题。使用同步请求的唯一可行原因是更轻松地促进 Web Workers 中的下载。
异步请求是 XMLHttpRequest 存在的主要原因。 XMLHttpRequest 支持 AJAX,其思想是让您的 JavaScript 代码运行,让您的用户对您的页面执行任何操作,同时 JavaScript 在后台与服务器通信。例如,Gmail 就以这种方式加载您的电子邮件。
同步请求会在传输完成时阻止脚本运行。简而言之,当异步请求可用时没有理由这样做。如果您的 Gmail 一直死机,那会很烦人,您不觉得吗?您很少(如果有的话)想要使用同步请求。
有些情况你必须使用同步请求 https://developer.mozilla.org/en/docs/DOM/XMLHttpRequest/Synchronous_and_Asynchronous_Requests#Irreplaceability_of_the_synchronous_use,但在这些情况之外,您可能完全没有理由发出同步请求,并且完全有理由使用异步请求。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)