strData = new byte[3];
strData[0] = 0x7E;
strData[1] = 0x06;
strData[2] = 0x20;
serialport1.Write(strData, 0, 3);
System.Threading.Thread.Sleep(100);
serialport3.Write(strData, 0, 3);
System.Threading.Thread.Sleep(100); reData1 = new byte[4];
reData3 = new byte[4];
try
{
serialport1.Read(reData1, 0, 4);
serialport3.Read(reData3, 0, 4);
}
catch(Exception ex)
{
MessageBox.Show("COM Exception" + ex.ToString(), "Exception", MessageBoxButtons.OK);
}
break;
如上,是我用serialport控件发送并接收数据的代码,刚开始执行的30次左右是没有问题的,但是30次以后就出现软件卡机的现象,在代码中查看时,发现是serialport1.Read(reData1,0,4)这句语句出现了异常,异常信息是:cannot evaluate expression because the current thread is in a sleep ,wait or join这是什么原因造成的呀?该如何解决呢?求高手指教啊!
解决方案 »
- 获取旺旺窗口的"发送"按钮句柄 100分
- 如何获取webbrowser里网页焦点文字
- 大家推荐一个cs系统的结构组织方式
- Windows Mobile 5下DataGrid 的滚动条被拖到或点击时会触发什么事件?
- 在TextBox中显示cout输出的内容
- 这个程序的删除事件和打印实践怎么写?
- 指定默认打印机时出错,请教各位高人?
- [请教思归等高手]如何使用程序访问到 ASP.NET 的 DataGrid 的分页的数据?(这个帖子先放20分,如能解决再奉送200)
- 谁能给提供一个拨号器的代码!ADSL的
- 程序会不会有什么隐患??
- 接收到单片机发来的数据时,c#界面会卡死?
- C#中SQLHelper 常用查询的用法和区别 求解
我要控制两个串口,所以就用了2个serialport啊