C# 从serialport/comport C读取数据时内存泄漏#

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

请查找下面的代码。我在此应用程序中未使用任何非托管代码。它是一个小的windows服务,应该能够连续读取串行端口并将其保存在数据库中。但是内存一直呈指数级增长,应用程序在几天后就会崩溃。请帮我解决这个问题。当我在没有serialport的情况下动态地传递报警时,它只消耗了16Mb(稳定),我可以假设这仅仅是因为serialport类吗

    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?//处理报警是代码的占位符吗?如果是的话,那就展示出来。