Я получаю эту ошибку...
Период ожидания семафора истек.
< /blockquote>
В этой строке...
ThePorts.ActivePort1.Open();
...но я получаю это только время от времени. Когда это случается, это происходит снова и снова. Затем проблема исчезает на несколько часов или дней, а затем возвращается.
Последовательный порт – USB с подключенным Bluetooth.
Я думаю, что у этого парня была очень похожая проблема, но не в C#.
Зависание SerialPort.Open/DeviceIoControl/GetcommState с usbser.sys
Насколько я могу судить, я прочитал всю его проблему, и полученные комментарии, и ответ, но я действительно не могу понять, какой из них решил его проблему. или если C# существенно отличается от того, что он испытал.
Спасибо за любую помощь невежественным. Это реальный код, в котором это происходит.
public static void Open_ActivePortWeWillUse(String Drone_StringNameFromUser)
{
SerialPort TempSerialPort = new SerialPort(Drone_StringNameFromUser, (int) SerialPortSpeed);
ThePorts.ActivePort1 = TempSerialPort;
ThePorts.ActivePort1.DataBits = 8;
ThePorts.ActivePort1.Parity = Parity.None;
ThePorts.ActivePort1.StopBits = StopBits.One;
ThePorts.ActivePort1.DataReceived += new SerialDataReceivedEventHandler(OurBackGroundSerialPortReceiver);
ThePorts.ActivePort1.Open(); // "Sometimes" Error hits here
}
Подробнее здесь: https://stackoverflow.com/questions/139 ... connection