相关疑难解决方法(0)

SerialPort类偶尔会在Dispose上挂起

我已经编写了一个.net 4.0控制台应用程序,它定期与GSM调制解调器通信,以获取收到的SMS消息列表(它是一个USB调制解调器,但代码通过串口驱动程序连接到它并发送AT命令 - 顺便说一句,它是Sierra无线调制解调器,但我不能改变它,我有最新的驱动程序).会发生什么事情,经过一段时间(可能是几小时,也许几天),它就会停止工作.这是一个日志片段......

2012-04-17 23:07:31 DEBUG Modem Check (108) - Executing AT command 'AT+CPMS="ME"'...
2012-04-17 23:07:31 DEBUG Modem Check (108) - Finished executing 'AT+CPMS="ME"'
2012-04-17 23:07:31 DEBUG Modem Check (108) - Detaching event handlers for 'COM13'
2012-04-17 23:07:31 DEBUG Modem Check (108) - Disposing the SerialPort for 'COM13'
Run Code Online (Sandbox Code Playgroud)

这就是日志的结束 - 即使我希望看到至少还有一个语句,这就是相关的代码:

internal T Execute()
{
    var modemPort = new SerialPort();
    T ret;

    try
    {
        modemPort.ErrorReceived += ModemPortErrorReceived;

        modemPort.PortName = _descriptor.PortName;
        modemPort.Handshake = Handshake.None;
        modemPort.DataBits = 8;
        modemPort.StopBits = StopBits.One; …
Run Code Online (Sandbox Code Playgroud)

.net c# serial-port

12
推荐指数
2
解决办法
5104
查看次数

标签 统计

.net ×1

c# ×1

serial-port ×1