c++ - boost.asio's socket's receive/send functions are bad? -


डेटा को प्राप्त (), async_receive () का उपयोग करते हुए एक कनेक्ट किए गए TCP सॉकेट पर लिखा या लिखा जा सकता है () या async_send () सदस्य कार्य हालांकि, क्योंकि ये संक्षिप्त लिखते हैं या पढ़ सकते हैं, एक अनुप्रयोग आमतौर पर निम्नलिखित कार्यों का उपयोग करेगा: read (), async_read (), लिखने () और async_write ()।

I वास्तव में समझ में नहीं आती कि पढ़ी गई (), async_read (), लिखने () और async_write () को भी संक्षिप्त लिखने या पढ़ा जा सकता है, ठीक है?
क्यों ये कार्य समान नहीं हैं?
मैं उन सभी का उपयोग करता हूं?
क्या कोई मेरे लिए यह टिप्पणी स्पष्ट कर सकता है?

पढ़ा , async_read , लिखते हैं , और async_write बनाये गये फ़ंक्शंस जो कॉल फ़ंक्शन कई बार कॉल करते हैं जब तक बाइट्स की अनुरोधित संख्या संचरित नहीं होती है। वे एक सुविधा के रूप में पुस्तकालय द्वारा शामिल किए गए हैं अन्यथा, प्रत्येक डेवलपर को उसी तर्क को लागू करने की आवश्यकता होगी।

कक्षा फ़ंक्शंस अंतर्निहित ओएस फ़ंक्शंस सीधे सीधा करते हैं, जो मूल रूप से दस्तावेज में बताते हैं: इन कार्यों को सभी बाइट्स से पहले वापस भेजा जा सकता है।

ज्यादातर मामलों में, आपको डेटा संचारित करने के लिए निशुल्क (सममित) फ़ंक्शंस का उपयोग करना चाहिए।


Comments