1
- 私は、プログラムを再起動すると、成功したバインド - エラー10048(アドレスがすでに使用)ブーストASIO近いバインドソケット
近いとシャットダウン呼び出さずには - すべてが正常
boost::asio::io_service _ioService;
boost::asio::ip::tcp::socket _socket(_ioService);
boost::system::error_code err;
_socket.open(boost::asio::ip::tcp::v4(), err);
if (err.value())
{
cout<<err.value()<<endl;
cout << err.message() << endl;
}
_socket.bind(boost::asio::ip::tcp::endpoint(boost::asio::ip::address_v4::from_string("127.0.0.1"), 1276), err);
cout << err.value() << endl;
if (err.value())
{
cout << err.value() << endl;
cout << err.message() << endl;
}
_socket.connect(boost::asio::ip::tcp::endpoint(boost::asio::ip::address_v4::from_string("127.0.0.1"), 1500), err);
if (err.value())
{
cout << err.value() << endl;
cout << err.message() << endl;
}
_socket.shutdown(_socket.shutdown_both);
_socket.close(err);
if (err.value())
{
cout << err.value() << endl;
cout << err.message() << endl;
}
このコードを実行しようとしましたが、呼び出しごとにエラー報告を追加しました。私の最初のエラーはconnect()呼び出しで発生します。 "接続拒否"。これにより、shutdown()呼び出しでエラーが発生します。 "転送エンドポイントが接続されていません。" close()の呼び出しでエラーは発生しませんでした。だから、あなたの問題は、接続の呼び出しで発生する可能性があります。それでも、あなたのバージョンのシャットダウンコールで例外が発生することが予想されます。 –