我有一个客户端 - 服务器程序.
我发送的数据如下:
private void Sender(string s,TcpClient sock)
{
try
{
byte[] buffer = Encoding.UTF8.GetBytes(s);
sock.Client.Send(buffer);
}catch{}
}
Run Code Online (Sandbox Code Playgroud)
并在客户端收到这样的:
byte[] buffer = new byte[PacketSize];
int size = client.Client.Receive(buffer);
String request = Encoding.UTF8.GetString(buffer, 0, size);
Run Code Online (Sandbox Code Playgroud)
问题是数据没有被完全接收,有时它只是我发送的一部分.PacketSize是10240,它超过我发送的字节数.我还在两侧设置了SendBufferSize和ReceiveBufferSize.
最糟糕的是,有时数据已被完全接收!
可能是什么问题?