需要运行Socket Connection&串行端口连接并行

时间:2012-02-09 12:07:00

标签: c# multithreading sockets serial-port

我在C#中有一个Client-Server系统,我不断通过套接字从客户端接收数据。我从客户端收到一组8个号码到服务器,然后再次重复此数据。一旦我收到一组数据,我必须通过一个串口发送它们,一旦完成就应该处理下一组数据。发送 - 接收到串行端口需要花费大量时间,同时,套接字连接已经发送了大量数据。奇怪的是,在第一次循环完成后,程序挂起,什么都不做,我的意思是程序不再被Socket Connection的输入数据触发。你能告诉我为什么会发生这种情况吗?如果我需要运行Socket Connection&串口在两个独立的线程上,我怎么能这样做?

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以实现一个生产者 - 消费者模式,其中一个线程(生产者)从套接字接收数据并将其放入队列数据结构中,而另一个线程(消费者)从队列中获取数据并且写入将其发送到串口。