socket做的文件上传程序,当执行Application_Start的时候开始监听,用netstat -an可以看到端口处于监听状态,
上传文件正常,可是几天之后,在用netstat -an看不到端口,上传文件肯定也上传不上去了。无错误日志。
程序如下:
private Socket m_listener;public PolicyServer()
{
m_listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
m_listener.Bind(new IPEndPoint(IPAddress.Any, 943)); m_listener.Listen(100);
m_listener.BeginAccept(new AsyncCallback(OnConnection), null);
}
public void OnConnection(IAsyncResult res)
{
Socket client = null; try
{
client = m_listener.EndAccept(res);
}
catch (SocketException ex)
{
try
{
m_listener.BeginAccept(new AsyncCallback(OnConnection), null);
}
catch(Exception ec)
{
LogManager.WriteLog("943端口开启监听失败!" + ec.ToString());
}
LogManager.WriteLog("943端口Accept失败!" + ex.ToString());
return;
} PolicyConnection pc = new PolicyConnection(client, m_policy);
m_listener.BeginAccept(new AsyncCallback(OnConnection), null);
}困扰很长时间了,一直查不到原因,麻烦各位给提个醒吧。
上传文件正常,可是几天之后,在用netstat -an看不到端口,上传文件肯定也上传不上去了。无错误日志。
程序如下:
private Socket m_listener;public PolicyServer()
{
m_listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
m_listener.Bind(new IPEndPoint(IPAddress.Any, 943)); m_listener.Listen(100);
m_listener.BeginAccept(new AsyncCallback(OnConnection), null);
}
public void OnConnection(IAsyncResult res)
{
Socket client = null; try
{
client = m_listener.EndAccept(res);
}
catch (SocketException ex)
{
try
{
m_listener.BeginAccept(new AsyncCallback(OnConnection), null);
}
catch(Exception ec)
{
LogManager.WriteLog("943端口开启监听失败!" + ec.ToString());
}
LogManager.WriteLog("943端口Accept失败!" + ex.ToString());
return;
} PolicyConnection pc = new PolicyConnection(client, m_policy);
m_listener.BeginAccept(new AsyncCallback(OnConnection), null);
}困扰很长时间了,一直查不到原因,麻烦各位给提个醒吧。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货