c#线程接收处理问题,接收线程接收到的信息如何返回给调用它的线程?求高手解答。

//接收线程publicvoidRecieveMessThread(){receiveThread=newThread(Receiving);receiveThread.... //接收线程
public void RecieveMessThread()
{
receiveThread = new Thread(Receiving);
receiveThread.Start();
}

//不停地接收信息
private void Receiving()
{
while (true)
{
try
{
byte[] recieveBytes = new byte[receiveSocket.ReceiveBufferSize];
receiveSocket.Receive(recieveBytes, recieveBytes.Length, 0); //接收
string receiveMessString = Encoding.UTF8.GetString(recieveBytes);//接收到的信息如何返回调用当前线程的类??

}
catch (Exception e)
{
//do nothing
}
}
}
展开
 我来答
深海触手
2014-04-18
知道答主
回答量:14
采纳率:0%
帮助的人:12.8万
展开全部
用委托就可以挂线程了。

public delegate void mydelegate(string rstr);

private void res(string str)
{
//接受到消息后就会调用这个函数,str就是传回的接受的数据,可以做处理。
}

//写在接受数据下面
BeginInvoke(new mydelegate(res), receiveMessString);
追问
菜鸟中,,,,举一个详细的例子吧/?
追答
上面2个写在主线程中,BeginInvoke写在接受的线程中,每次接受到数据后都会触发res那个函数。
比如每次接受数据后,在res里面加 MessageBox.Show(str);每次接受到数据就会弹出框弹出来了啊。。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式