C# 从serialport/comport C读取数据时内存泄漏#
请查找下面的代码。我在此应用程序中未使用任何非托管代码。它是一个小的windows服务,应该能够连续读取串行端口并将其保存在数据库中。但是内存一直呈指数级增长,应用程序在几天后就会崩溃。请帮我解决这个问题。当我在没有serialport的情况下动态地传递报警时,它只消耗了16Mb(稳定),我可以假设这仅仅是因为serialport类吗C# 从serialport/comport C读取数据时内存泄漏#,c#,.net,service,serial-port,C#,.net,Service,Serial Port,请查找下面的代码。我在此应用程序中未使用任何非托管代码。它是一个小的windows服务,应该能够连续读取串行端口并将其保存在数据库中。但是内存一直呈指数级增长,应用程序在几天后就会崩溃。请帮我解决这个问题。当我在没有serialport的情况下动态地传递报警时,它只消耗了16Mb(稳定),我可以假设这仅仅是因为serialport类吗 private void comport_DataReceived(object sender, SerialDataReceivedEventArgs
private void comport_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
try
{
string alarm = _comport.ReadLine().Trim();
//process the alarm
}
catch (Exception ex)
{
UtilsLog.WriteToLogFile("comport_DataReceived " + ex.Message);
Console.WriteLine("comport_DataReceived " + ex.Message);
}
finally
{
GC.Collect();
GC.WaitForPendingFinalizers();
}
}
将需要查看涉嫌导致内存增加的代码。我如何给出我的代码?在一些博客中,我读到的USB或其驱动程序可能是内存泄漏的原因。如何确定泄漏是因为我的代码还是因为USB?//处理报警是代码的占位符吗?如果是的话,那就展示出来。