मैं क्लाइंट/सर्वर एप्लिकेशंस को लागू करने के लिए बूस्ट :: एएसओ का उपयोग कर रहा हूं। नीचे दिए गए क्लाइंट कोड का उपयोग रिमोट सर्वर से कनेक्ट करने के लिए किया जाता है।Boost :: asio में सॉकेट कनेक्शन लाइव होने पर कैसे जांचें?
try
{
boost::asio::io_service m_io_service;
boost::asio::ip::tcp::socket m_socket(m_io_service);
boost::asio::ip::tcp::endpoint endpoint(boost::asio::ip::address::from_string("127.0.0.1"), 17);
m_socket.connect(endpoint);
}
catch (std::exception& e)
{
std::cerr << e.what() << std::endl;
}
ग्राहक पक्ष में, मैं जांचना चाहता हूं कि कनेक्शन लाइव है या नहीं। फ़ंक्शन "m_socket.is_open();
" काम नहीं करता है। जब सर्वर सॉकेट बंद हो जाता है, तो "m_socket.is_open();
" अभी भी क्लाइंट पक्ष पर सत्य लौटाता है। क्या कनेक्शन की जांच करने का कोई तरीका है?
मुझे यहां एक समान संदेह था: http://stackoverflow.com/q/1511129/174605 और joshperry – coelhudo