2 yp20121007 yp20121007 于 2013.09.20 14:36 提问

关于linux c socket编程

client端要有两个线程,一个正常收发数据,另一个发心跳包,这样就是要创建两个sock了吗?
另外 server端两个线程中的一个如何判断哪个是心跳包的sock?

2个回答

u012204919
u012204919   2013.09.22 17:04
已采纳

socket是地址,端口号。只要是为了表明你连接的对象是什么!

如果你要在sever端分析出是哪个client的话,发过来的请求里你要求他包含他的认证信息就好。

yp20121007
yp20121007 谢谢!是不是就是说,一定要先读取数据,分析头才能知道收到的数据是否为心跳包吧?
4 年多之前 回复
muguan11
muguan11   2014.05.30 13:28

建一个socket就可以了。发送数据的时候设一个标示符,server监听的时候分析数据判断是心跳包or其他

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!