我有一个列表,其中包含我尝试发送到服务器的大量邮件。 这是我的代码:
private void sendBtn_Click(object sender, EventArgs e)
{
for (int i = 0; i < listORequestedCommands.Items.Count; i++)
{
clientSock.Send(Encoding.Default.GetBytes(listORequestedCommands.Items[i].ToString()));
}
removeAll_Click(sender, e);
sendBtn.Enabled = false;
}
但是,当我单击发送按钮时,我看到服务器收到一条消息,其中包含连接的所有列表项,而不是接收分开的消息。
有什么想法吗?
答案 0 :(得分:1)
实施协议。 TCP套接字是基于流的,而不是基于消息的。
答案 1 :(得分:0)
您应该等待确认,因为您没有等待收集的字节被收集并显示为合并结果。 将数据发送到套接字后,您应该使用
之类的代码int bytesRec = clientSock.Receive(bytes);