我为gps跟踪器创建了一个c#async tcp服务器,现在,我在日志中收到了很多这样的消息,也许是我的代码。
例外情况是:远程主机强行关闭现有连接
private void ReceiveCallback(IAsyncResult ar)
{
log = LogManager.Instance;
AsyncStateObject state = (AsyncStateObject)ar.AsyncState;
try
{
Socket client = state.client.clientSocket;
int read = client.EndReceive(ar);
if (read > 0)
{
if (DataReceived != null)
{
byte[] data = null;
data = TrimEnd(state.dataBuffer);
log.Write(LogManager.LogType.DataTransfer, TAG, "[" + endPoint.Address.ToString() + ":" + server.port.ToString() + "] <- " + BitConverter.ToString(data).Replace("-", ""));
DataReceived(this, data, read);
}
SocketError err;
clientSocket.BeginReceive(state.dataBuffer, 0, 300, SocketFlags.None, out err, ReceiveCallback, state);
}
else
{
if (Disconnected != null)
{
Disconnected(this);
}
}
}
catch (Exception e)
{
log.Write(LogManager.LogType.AppError,TAG, "<ReceiveCallback>: " + e.Message);
}
}