我用c#写的 windows服务为什么过一段时间就不执行了
最近用c#写了一个windows服务部署到服务器上,可是最近发现每次启动服务不到一天的时间就不执行程序了,而且服务也不停止,等到下次再启动服务,处理的数据就会出错,这是为...
最近用c#写了一个windows服务部署到服务器上,可是最近发现每次启动服务不到一天的时间就不执行程序了,而且服务也不停止,等到下次再启动服务,处理的数据就会出错,这是为什么,急。等待高人指点。
不知道和端口有没有关系,部分代码
------------------------------------------------------------------------------
IPAddress ServerIp = IPAddress.Parse("127.0.0.1");
IPEndPoint iep = new IPEndPoint(ServerIp, 21088);
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Bind(iep);
byte[] byteMessage = new byte[6300];
while (true)
{
try
{
socket.Listen(5);
Socket newSocket = socket.Accept();
newSocket.Receive(byteMessage);
string datastr = Encoding.Default.GetString(byteMessage);
//计算
Cal.Calc(datastr);
}
catch (Exception ed)
{
StreamWriter fd = File.AppendText("D:/emposServices.txt");
fd.Write("xx" + ed.Message);
fd.Close();
}
-----------------
检查一下你的错误日志文件的大小,看是不是太大了
--------------
没啊,10几K
------------------------
---------------------------
没有子线程,就一个主线程,这样,我这个服务支不支持几十个客户端同时访问 展开
不知道和端口有没有关系,部分代码
------------------------------------------------------------------------------
IPAddress ServerIp = IPAddress.Parse("127.0.0.1");
IPEndPoint iep = new IPEndPoint(ServerIp, 21088);
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Bind(iep);
byte[] byteMessage = new byte[6300];
while (true)
{
try
{
socket.Listen(5);
Socket newSocket = socket.Accept();
newSocket.Receive(byteMessage);
string datastr = Encoding.Default.GetString(byteMessage);
//计算
Cal.Calc(datastr);
}
catch (Exception ed)
{
StreamWriter fd = File.AppendText("D:/emposServices.txt");
fd.Write("xx" + ed.Message);
fd.Close();
}
-----------------
检查一下你的错误日志文件的大小,看是不是太大了
--------------
没啊,10几K
------------------------
---------------------------
没有子线程,就一个主线程,这样,我这个服务支不支持几十个客户端同时访问 展开
4个回答
展开全部
要关服务器,在fd.Close();后面再添加一个关闭服务器:socket
.Close();当然不关服务器就会浪费资源,这样添一个关闭,就可以随开随关,可以执行很久啦!
.Close();当然不关服务器就会浪费资源,这样添一个关闭,就可以随开随关,可以执行很久啦!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你写服务的什么方法里了?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
检查一下你的错误日志文件的大小,看是不是太大了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询