我正在用 c# 制作一个应用程序。在那个应用程序中我使用异步套接字通信。我编写的代码为
byte[] byteData = new byte[1024];
clientSocket.BeginReceiveFrom(byteData, 0, byteData.Length, SocketFlags.None, ref m_EpReceive, new AsyncCallback(OnRceiveCallBack), objReceiverSocketState);
在这里,我得到byteData
的可变大小意味着有时是 700 字节,有时是 276 字节(不固定)。在这里,我宣布byteData
了 1024 大小。所以我的问题是,有什么方法可以声明byteData
接收到的确切数据量的大小?(意味着假设我得到 500 个字节,所以大小byteData
应该是 500。)我也有疑问,如果我已经声明大小byteData
为 1024,那么它是否会等待获得总共 1024 个字节,或者如果它有一些字节,那么它会调用方法OnRceiveCallBack
?请帮我。提前致谢。