关于linux c socket编程

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

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

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

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