public static void CloseSerialPort(SerialPort serialPort) { lock (ports) { if (serialPort != null) serialPort.SetSocket(null); } }
public static void CloseSerialPort(SerialPort serialPort) { lock (ports) { if (serialPort != null) { serialPort.SetSocket(null); } } }
public static SerialPort GetSerialPort(System.Net.Sockets.Socket socket, string portName, int baudRate) { lock (ports) { SerialPort sp = null; string key = portName.ToUpper(); try { sp = ports[key]; if (sp.InUse()) { throw new Exception("Port is already in use!"); } sp.SetSocket(socket); } catch (KeyNotFoundException) { sp = new SerialPort(socket, portName, baudRate); sp.OpenPort(); ports.Add(key, sp); } return(sp); } }