What is the difference between a synchronous and an asynchronous request? (async=true/false)
ajax, javascript
Solution
Mozilla Developer: Synchronous and Asynchronous Requests
`XMLHttpRequest` supports both synchronous and asynchronous communications. In general, however, asynchronous requests should be preferred to synchronous requests for performance reasons.
In short, synchronous requests block the execution of code and can leak memory and events. This can cause serious issues. The only viable reason to use synchronous requests is to more easily facilitate downloads within `Web Workers`.
Problem
What is the difference between `async=false` and `async=true`, when I am using `open` method of `XMLHttpRequest`? ``` function GetXML() { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = test xmlhttp.open("GET", "PlanetCafe.xml", true); xmlhttp.send(null); } ```