تعزيز :: اسيو عمليات القراءة / الكتابة
-
22-07-2019 - |
سؤال
ما هو الفرق بين الدعوة وظائف الأعضاء boost::asio::ip::tcp::socket
/ read_some
write_some
واستدعاء وظائف خالية boost::asio::read
/ boost::asio::write
؟
وبشكل أكثر تحديدا:
هل هناك أي فائدة لاستخدام واحد على الآخر؟
وماذا كلاهما واردان في المكتبة؟
المحلول
وread_some وwrite_some قد ترجع في أقرب وقت كما تم نقل حتى بايت واحد. على هذا النحو تحتاج إلى حلقة إذا كنت ترغب في التأكد من الحصول على كافة البيانات - ولكن هذا قد يكون ما تريد
.وظائف الحرة هي مغلفة حول read_some وwrite_some، ولها شروط إنهاء مختلفة اعتمادا على الزائد. وعادة ما تنتظر المخزن المؤقت على أن يتم تحويلها بالكامل (أو يحدث خطأ، أو في بعض الزائدة شرط اكتمال صريحة إلى أن يحدث)
لا تنتمي إلى StackOverflow