我需要一些正确编码的建议:
我正在开发一个使用多个串行连接的程序。每条通信线路都有一个控制器作为抽象层。在控制器和串行端口之间,插入协议以将数据包装在数据包中,以备传输。该协议负责处理失败的交付、重新发送等。为了确保 GUI 不会挂起,每个连接线(协议和串行端口)都在单独的线程上创建。控制器由主线程处理,因为它在 GUI 中有控件。
目前,当我创建线程时,我选择在它们上创建一个消息循环(Application.Run()),所以如果没有工作,我只是调用线程(BeginInvoke)并使用消息循环而不是轮询缓冲区并产生一个缓冲区。这目前工作得很好,到目前为止还没有严重的问题。
我现在的问题是:这是“良好的编码”,还是我应该在胎面上使用 while 循环并轮询缓冲区?还是第三件事?
我想展示代码,但到目前为止它是几千行代码,所以如果您需要查看代码的任何部分,请具体说明。:)
谢谢你。