Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 如何将recv与send-in套接字分离?_Sockets_Socket.io_Send_Asyncsocket_Recv - Fatal编程技术网

Sockets 如何将recv与send-in套接字分离?

Sockets 如何将recv与send-in套接字分离?,sockets,socket.io,send,asyncsocket,recv,Sockets,Socket.io,Send,Asyncsocket,Recv,当使用套接字api编写如下代码时: # client end send(string1) send(string2) # server end st1 = recv(4096) st2 = recv(4096) 问题是st1将同时接收string1和string2。如何从string2获取st2?您需要使用不同的端口。或者需要使用诸如“\n”之类的分隔符来分析字符串。@pranitkothari内容在string1和string2中包含“\n”,问题是它有时会得到st2,有时不会。是的,这是

当使用套接字api编写如下代码时:

# client end
send(string1)
send(string2)

# server end
st1 = recv(4096)
st2 = recv(4096)

问题是st1将同时接收string1和string2。如何从string2获取st2?

您需要使用不同的端口。或者需要使用诸如“\n”之类的分隔符来分析字符串。@pranitkothari内容在string1和string2中包含“\n”,问题是它有时会得到st2,有时不会。是的,这是偶然的。在同一个插座上保持两个recv是不好的。天知道谁会有机会。进入一个变量,然后决定它应该去哪里。@pranitkothari逻辑是,客户可以在需要的时候推拉很多请求(一个人可能会多次发送请求),所以服务器必须将这些请求分开,如何分开?您的recv也是一样的它如何理解去哪里。recv只是接收,然后您需要注意您的数据。或者使用不同的端口。或者使用一些表示去哪里的分隔符。如果你有其他的答案,请把它贴出来。我也在等待。