为什么串口通信后总是sleep进程??

来源:百度知道 编辑:UC知道 时间:2024/05/17 03:58:53
SMSPort是一个SerialPort类的对象,

SMSPort.Write("AT+CMGF=0" + (char)(13));

Thread.Sleep(50);

为什么串口通信执行了 write语句后总是用sleep语句??它挂起了哪一个
进程??

因为在串口进行通讯的时候,涉及到一个缓冲区的概念,
每次读写数据,都需要从计算机发送到缓冲区,活硬件将数据发送到缓冲区,然后进行相应的读写。
所有在com口进行通讯的时候,大多使用Thread.Sleep来等待。
它挂起了,当前正在读取缓冲区数据的线程。

没开新线程的话就挂起了当前应用程序进程!开了新线程的话只挂起了所在的线程。