zoukankan      html  css  js  c++  java
  • C# SerialPort System.ObjectDisposedException, safe handle has been closed 解决方案

    If I use GC.SuppressFinalize(serialPort.BaseStream), it still doesn't work in my case. Although the serial port object is not disposed by GC, the serial port can't receive data yet.

    I find another way, and it works always!

    I write a endless loop to check and create a new serial port object if it is disposed by GC.

    while (true)

    {

    Thread.Sleep(60000);

    if (serialPort == null)

    {

    serialPort = new SerialPort(portName, 9600,Parity.None,8);

    serialPort.DataReceived += new SerialDataReceivedEventHandler(serialPort_DataReceived);

    serialPort.Open();

    }

    }

    Wish it's usefull for you guys!

  • 相关阅读:
    对我影响最大的三位导师
    global与nonlocal
    random模块
    time模块
    datetime模块
    sys模块
    os模块
    collection模块
    hashlib模块
    pickle模块
  • 原文地址:https://www.cnblogs.com/newwind521/p/2113650.html
Copyright © 2011-2022 走看看