このコードを使用して、サーバーへの接続を処理し、クライアントからデータを読み取ります
using(var client = _listener.EndAcceptTcpClient(ar))
{
var clientStream = client.GetStream();
// Get the request message
Messages.ReceiveMessage(clientStream, msg => ProcessRequest(msg, clientStream));
}
これで、パラメーターとして渡されたストリームで ReceiveMessage メソッドが呼び出さBeginRead()
れますが、ObjectDisposedException が発生します。
Stream が不要になったときに stream.Dispose() を呼び出すことが解決策であることはわかっていますが、using
句の使用を維持できる解決策を本当に探しています。
ありがとう