仪器控制库 - SerialPort异常

时间:2017-07-11 01:46:16

标签: .net vb.net exception dll serial-port

我正在写一个图书馆来控制一些测量仪器,今天我问自己应该如何处理例外情况,例如:如果我在“DigitalMultimeter”类中有这样的想法

Public Function GetSerialNumber() As String
    Me.SerialPort.Write("SN" & vbCr)
    'System.Threading.Thread.Sleep(200)
    Return SerialPort.ReadTo(vbCrLf)
 End Function

我应该在这里执行try catch块,还是留给库的客户,因为(afaik)最终的异常将一直提升到调用者,而不需要在这里重新抛出,或者我错了?

另一个问题是,如果这种方法需要一段时间来阅读响应,例如我需要时间来做一些微积分或温度需要调整,我应该把它作为异步方法,还是让它同步。作为决定做什么的消费者?这是CPU绑定还是I / O绑定?

您是否知道OpenSource Library或Info,它使用SerialPorts来查看,因为我不确定使用SerialPorts的最佳实践?

提前致谢 RG

0 个答案:

没有答案