项目需要开发一个服务端程序,用到多线程处理UDP通信。
通信的过程是这样的,通信节点:车载GPS终端,网络中心,现在要开发的服务端程序,web控制端。
车载GPS终端,网络中心之间的通信我不管(由终端设备提供方的服务器程序维护,网络中心作为我的服务端和车载GPS终端之间的桥梁)
现在我要开发的服务端要处理web控制端对车载GPS终端控制指令的数据包,和车载GPS终端发送给我的数据包的接收、解析(判断是何种指令),发送响应指令车载GPS终端(这里假设上百台),要是同时进行数据传输,数据量比较大。我的服务端要尽量保证不丢包(不要说用TCP,这里连接不是固定的),而且在处理的性能上尽可能做到最好。多线程应如何设计???以前没有过多线程的经验。请大家帮我分析分析。。给点意见!分不是问题,不够加!
通信的过程是这样的,通信节点:车载GPS终端,网络中心,现在要开发的服务端程序,web控制端。
车载GPS终端,网络中心之间的通信我不管(由终端设备提供方的服务器程序维护,网络中心作为我的服务端和车载GPS终端之间的桥梁)
现在我要开发的服务端要处理web控制端对车载GPS终端控制指令的数据包,和车载GPS终端发送给我的数据包的接收、解析(判断是何种指令),发送响应指令车载GPS终端(这里假设上百台),要是同时进行数据传输,数据量比较大。我的服务端要尽量保证不丢包(不要说用TCP,这里连接不是固定的),而且在处理的性能上尽可能做到最好。多线程应如何设计???以前没有过多线程的经验。请大家帮我分析分析。。给点意见!分不是问题,不够加!
多线程要那样用???不需要吧。多开一个线程。目的用于监听端口而已。因为监听的时候是会阻塞的。
UDP 通信是有可能丢包的,所以下位机设计的数据包是有验证码的。就是用来检查是否有数据丢失。而且下位机设计的是循环发送的。即不止发送一次。
http://topic.csdn.net/u/20080623/08/4bbd2475-45f1-42e3-a613-16b094759ade.html
用于實時接受數據,對數據逕行處理!