主界面每秒计算相关数据,并且接受外部一台主机的串口查询命令,如果数据达到告警状态就发送一条告警命令,主界面也会显示相关告警,但现在主界面有时候刷新,操作都很慢,估计是因为串口操作的关系,如何使得串口操作不影响界面的相关操作呢?是用异步操作还是用线程。具体怎么实现呢?等待!每秒是主动去取串口数据的。没有使用c# 数据接收事件!这样的话有时候外部主机复位的时候读取数据会超时!怎么处理呢,还是用数据接收事件来处理?
解决方案 »
- Redis出现中Operation against a key holding the wrong kind of value 求解?
- 怎样获得串口信息?
- 字符串supercalifragilisticexpialidocious是因为太长了而不能放在string变量中吗?为什么。
- C#中如何将WinForm的用户填写的信息存入XML?
- 能够在线程中关闭起用线程的窗口吗?
- summast,saucer,来给大家说说企业服务中的自动事务吧。到底根传统的事务差别在什么地方呢?看了summast翻译的感觉还是没有理解,给点实例
- C#连informix 出现乱码的问题
- 再问个c# post参数的问题
- TCP 连接多个服务器 请教
- 有C#写的象棋或围棋程序吗?我想要找个看看
- C#中怎么在按钮事件中调用程序中建立的对象
- “file:”路径 是怎样的路径?
最近没心情。没有续写下去。先凑合看看前三章.
C# 串口操作系列(1) -- 入门篇,一个标准的,简陋的串口例子。
C# 串口操作系列(2) -- 入门篇,为什么我的串口程序在关闭串口时候会死锁 ?
C# 串口操作系列(3) -- 协议篇,二进制协议数据解析
/*串口通讯使用一般有两种模式:
1 问答,就是你提到的定时读取.比如200豪秒返回不是我指定字节长度就当出错处理.开始下次通讯.
否则就接收读取回来解析数据
2 触发接收,缓冲区有数据就触发datarecive事件,你要不断接收处理,比较被动.你所提到的委托也可以,其实比较方便可以直接开启一个后台BackgroundWorker线程来完成通讯,只要将数据共享就可以了,不影响界面线程
*/我现在使用的是第一种方法,但是有时候会有超时异常,如何像上面所说的使用 委托,或者后台线程。。来实现???