C# socket 怎样连续发送

每发一次信息都必须new一次socket然后send吗?还是只要连接上了就以后就能任意发送和接收?我现在用了beginsend方法server只接收了一次再调用就无法接收... 每发一次信息都必须new一次socket 然后send吗?
还是只要连接上了就以后就能任意发送和接收?
我现在用了beginsend方法 server只接收了一次 再调用就无法接收了
大家来帮忙下 谢谢啦
另外 用beginaceept是不是也能接收信息哦 和beginreceive有什么区别呢?
展开
 我来答
百度网友3bba137
2019-04-10 · TA获得超过3811个赞
知道答主
回答量:335
采纳率:83%
帮助的人:19.9万
展开全部
每发一次信息都必须new一次socket 然后send吗? 不是!
还是只要连接上了就以后就能任意发送和接收?是!

我现在用了beginsend方法 server只接收了一次 再调用就无法接收了 多半是你接受有问题!你接收的CALLBACK里面还要继续"begin接收"

beginaceept是不是也能接收信息哦 没试验过,但是这里本身就不是这么用的.
beginaceept是通过客户端连接生成一个可以和客户端发送信息的插口 这个是监听插口才能用的.
beginreceive监听端口是不能调用的.必须用beginaceept生成的那个可通讯插口调用.
xx_lzj
推荐于2016-08-08 · TA获得超过970个赞
知道大有可为答主
回答量:578
采纳率:0%
帮助的人:733万
展开全部
当然不用,你如果真这样,每次都得关闭,否则纯属网络病毒,哈哈
不用beginsend就可以,那是异步方法,下面是同步的,用起来简单些
try
{
byte[] buffer = System.Text.Encoding.Unicode.GetBytes(msg);
sock.SendTimeout = 500;
sock.Send(buffer);
MessageBox.Show("send "+msg);
}
catch (Exception ec)
{
MessageBox.Show(ec.Message);
}

*******************************************
beginAccept是监听客户端连接的方法,beginReceive是异步接收
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f0c02d0
2008-02-26 · TA获得超过317个赞
知道小有建树答主
回答量:388
采纳率:0%
帮助的人:435万
展开全部
启动个线程,然后把接收那个方法用永真设为不断接受..
while(true)
{
<<接收...程序..>>
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6f75ac8fa
2008-02-26 · TA获得超过2513个赞
知道大有可为答主
回答量:1.3万
采纳率:0%
帮助的人:4020万
展开全部
这个很少用啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
alreala
2008-02-27 · TA获得超过159个赞
知道小有建树答主
回答量:371
采纳率:0%
帮助的人:142万
展开全部
while(true)
{}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式