Это асинхронно, потому что клиент и сервер работают независимо друг от друга на время вызова функции.
Во время обычного вызова функции вы делаете вызов, и вызывающая функция не может выполняться снова, пока вызов функции не завершится и не завершится. Звонящий и вызываемый всегда синхронизируются.
Во время асинхронного вызова функции вы делаете вызов, а затем элемент управления немедленно возвращает вызывающей стороне. Вызываемый затем возвращает значение некоторое неопределенное количество времени спустя. Это «неопределенное количество времени» означает, что вызывающий и вызываемый абоненты больше не синхронизируются, поэтому он асинхронный.