Я написал следующий код:
public static void BeginListen( int port )
{
IPAddress address = IPAddress.Any;
IPEndPoint endPoint = new IPEndPoint( address, port );
m_Socket = new Socket( AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp );
m_Socket.Bind( endPoint );
m_Socket.Listen( 8 );
m_Socket.BeginAccept( new AsyncCallback( Accept ), null );
}
private static void Accept( IAsyncResult result )
{
Socket client = m_Socket.EndAccept( result );
SocketData state = new SocketData( client, 32767 );
m_Socket.BeginReceive( state.Buffer, 0, state.Buffer.Length, SocketFlags.None,
new AsyncCallback( Receive ), state );
m_Socket.BeginAccept( new AsyncCallback( Accept ), null );
}
Когда клиент пытается подключиться, при вызове BeginReceive в Accept () выдается ошибка:
Запрос на отправку или получение данных был отклонен, поскольку сокет не подключен и (при отправке на сокет дейтаграммы с использованием вызова sendto) адрес не был предоставлен
Что вызывает это? Я просто не могу его разместить.
Спасибо