8,735
社区成员
发帖
与我相关
我的任务
分享
void A()
{
string message="test";
SendCommandAndGetMessage(message)
//这里怎么得到socketArg_Completed里的消息strText?
}
public void SendCommandAndGetMessage(string message)
{
clientSocket = new System.Net.Sockets.Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
SocketAsyncEventArgs socketEventArg = new SocketAsyncEventArgs()
{
RemoteEndPoint = new IPEndPoint(IPAddress.Parse(hostIP), port)
};
socketEventArg.Completed += new EventHandler<SocketAsyncEventArgs>(socketEventArg_Completed);
clientSocket.ConnectAsync(socketEventArg);
}
void socketEventArg_Completed(object sender, SocketAsyncEventArgs e)
{ //连接成功后 开始发送
.......
socketArg.Completed += new EventHandler<SocketAsyncEventArgs>(socketArg_Completed);
}
void socketArg_Completed(object sender, SocketAsyncEventArgs e)//事件
{
byte[] byteReceive = e.Buffer;
string strText = System.Text.Encoding.UTF8.GetString(byteReceive, 0, byteReceive.Length).ToString();
//这里面取得了异步返回的信息,strText
}