Try catch и сокеты - C#
Формулировка задачи:
Есть библиотека классов ,в ней есть класс для передачи данных через TCP\IP.Я добавил в один из методов try catch ,в попытке отловить неудачное соединение:
Проблема в том что даже если сервер не доступен оно мне всегда возвращяет "ОК".В чем прикол?
public InvalidCastException Connect()
{
try
{
InvalidCastException ok=new InvalidCastException("OK");
var ipep = new IPEndPoint(Dns.GetHostEntry(_host).AddressList[0], _port);
_s = new Socket(ipep.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
_s.BeginConnect(ipep, OnConnected, _s);
return (ok);
}
catch (InvalidCastException e)
{
return (e);
}
}Решение задачи: «Try catch и сокеты»
textual
Листинг программы
public bool StartReceive()
{
try
{
var rs = new RecvState(_s);
_s.BeginReceive(rs.buf, 0, RecvState.BufSize, SocketFlags.None, OnRecv, rs);
return (true);
}
catch
{
return (false);
}
}