Ich bin neu in C++ und ich versuche, eine Client-Server-Anwendung basierend auf der Boost :: Asio-Bibliothek zu entwickeln. Ich bin (noch) nicht in der Lage, den Unterschied zwischen Sync- und Async-Modi richtig zu verstehen. Ich habe zuvor Webprotokolldienste wie HTTP und AJAX studiert. Von this explanation ist klar, dass HTTP synchron ist und AJAX asynchron ist. Was ist der Unterschied in der TCP-Socket-Kommunikation in Bezug auf Sync und Async? Und welcher Modus ist aus der Perspektive der Multi-Threaded-Anwendungsentwicklung auf Unternehmensebene besser und warum?Was ist der Unterschied zwischen synchroner und asynchroner Übertragung bei der TCP/IP-Socket-Programmierung?
Wie ich synchronen Modus verstehe, blockiert der Client für eine Weile, bis er die Paket/Daten-Nachricht vom Server empfängt. Und im asynchronen Modus führt der Client eine andere Operation aus, ohne die aktuelle Operation zu blockieren. Warum ist das anders? Ist async auch mit UDP? Es scheint, es ist es egal, ob es eine Übertragungsbestätigung empfängt.
zu verwenden Danke :), Welche API wäre also besser für "Enterprise-Level-Multithread-App"? Was ich versuche zu entwickeln, ist ein Lizenzierungsmodell, das robust genug sein muss, um die Anfrage zu bearbeiten und die Antwort an die Client-Software zu senden. –
Ich würde dafür nicht über eine synchrone API hinausschauen. Es ist nicht so, dass dies eine Unternehmensdatenbank ist, die 200 Millionen Transaktionen pro Tag bewältigen muss. – EJP
Hmm ... so synchron wird besser sein? Es ist nicht vollständig eine Datenbank-App, obwohl einige Dateiübertragungen und Info (in Bytes) Übertragung oft erforderlich ist, werden fast 20-30 MB pro 10 Minuten übertragen werden ... –