Quelle est la différence entre synchrone et asynchrone de la transmission de socket TCP/ IP de la programmation?

Je suis novice en C++ et je suis en train de développer une application client-serveur basé sur le boost::asio de la bibliothèque. Je suis (encore) en mesure de bien comprendre la différence entre la synchronisation et async modes. J'ai déjà étudié le protocole web services, tels que HTTP et AJAX. De cette explication, il est clair que HTTP est synchrone et AJAX est asynchrone. Quelle est la différence entre TCP socket de communication en termes de synchronisation et asynchrone? Et la mode qui est mieux du point de vue de l'entreprise au niveau de l'application multi-thread de développement, et pourquoi?

Que je comprends mode synchrone, le client bloque pendant un certain temps jusqu'à ce qu'il reçoit le paquet de données/message depuis le serveur. Et en mode asynchrone, le client effectue une autre opération sans blocage de l'opération en cours. Pourquoi est-ce différent? Est asynchrone synonyme avec UDP? Il semble qu'il ne se soucie pas si elle reçoit l'accusé de réception de transmission.

OriginalL'auteur abhi abhi | 2013-07-05