当前位置: 技术问答>linux和unix
请教高人:同一个套接字(做客户端)连接到server后在不同子进程里使用能否不采取互斥措施收发?
来源: 互联网 发布时间:2016-07-05
本文导语: 请教高人:同一个套接字(做客户端)连接到server后在不同子进程里使用能否不采取互斥措施收发? 比如: connect( socket,.....) if (fork() == 0)//同一个套接字做客户端用在第1个子进程 { send(socket .....
请教高人:同一个套接字(做客户端)连接到server后在不同子进程里使用能否不采取互斥措施收发?
比如:
connect( socket,.....)
if (fork() == 0)//同一个套接字做客户端用在第1个子进程
{
send(socket
....
}
if (fork() == 0)//同一个套接字做客户端用在第二个子进程
{
recv(socket
....
}
不采取措施会不会造成收发的内容收发混在一起?
如需要措施,该是什么措施?信号量互斥?
比如:
connect( socket,.....)
if (fork() == 0)//同一个套接字做客户端用在第1个子进程
{
send(socket
....
}
if (fork() == 0)//同一个套接字做客户端用在第二个子进程
{
recv(socket
....
}
不采取措施会不会造成收发的内容收发混在一起?
如需要措施,该是什么措施?信号量互斥?
|
短连接的话,同一个套接字无需采用互斥操作。
|
内核中TCP协议的收和发是两个不同的缓冲区,理论上应该不会造成收发的内容混在一起。
|
我也认为是这样的