我正在使用 C# (.Net Framework 2.0) 编写的程序要求能够切换到“远程模式”并通过蓝牙将 ascii 数据发送到另一个屏幕。首先我要说我不是一个很有经验的程序员,我对网络一无所知,但是在昨天玩弄了 SerialPort 类之后,我能够开发出一个在两个蓝牙连接设备之间运行良好的小聊天程序.
然而,聊天程序仅在用户点击按钮“发送”数据时才发送数据。如果两个设备没有正确连接,我只会抛出一条TimeoutException
错误消息。我现在正在处理的程序要大得多,只要它打开 COM 端口,它就会不断尝试写入数据。
这意味着如果两个设备没有立即连接,它必须抛出一个TimeoutException
,它会一次又一次地继续抛出它,直到它们正确连接。这是完全不能接受的。它将程序减慢到无法使用的程度,并在调试输出中乱扔“TimeoutException Thrown Here”错误消息。
有没有更好的解决方案来解决这个问题?如果我可以确认两个设备已连接,我可以通过某种方式让它只写出数据,而无需不断检查(随后在检查时出现超时错误)。