当前位置: 代码迷 >> .NET Framework >> socket编程遇到的一些有关问题
  详细解决方案

socket编程遇到的一些有关问题

热度:120   发布时间:2016-05-01 23:28:24.0
socket编程遇到的一些问题


大家好,上面是我参考网上资料写的,使用socket文件接收的代码段,但是我看着总觉得别扭,对于每次发文件,至少有3个判断,最揪心的就是,这些都是在一个死循环里面写的,我没有任何socket经验,总是习惯了调用方法那种编程,这个写法有些不适应,难道socket编程真的就是这样的吗?每次打开连接之后,客户端每一步发送什么的东西,服务端就要有对应的步骤响应,但是我觉得也不是吧?比如QQ,如果用socket的话,打开连接,登陆验证,然后服务端一直对这个连接死循环吗?然后根据消息类型进行相应的响应?

求教、求科普!!!

PS:我比较喜欢【Z65443344】的答复风格,不会长篇大论的讲理论,也不会细致入微的讲代码,但是,寥寥几句总能说到点上,很接地气儿的那种感觉~要向【Z65443344】学习哦!!!~O(∩_∩)O~
------解决思路----------------------
那是你客户端的代码有问题,不是完全服务端代码的问题
两端的协议要定好,才不至于出现粘包的情况
要么每个包的头部加上4个字节,表示包的长度,然后服务端按长度解析,多出来的部分继续当下一个包解析,知道包读完
要么客户端每发送一个包,服务端都必须回一个包,比如回发个1,表示收到,然后客户端再发下一个
  相关解决方案