c# socket如何判断发送已经客户端接收完毕? c# socket如何判断发送已经客户端接收完毕? 如果能提供实例那最好了。谢谢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 socket.BeginSend 函数中的 AsyncCallback 是一个发送完后触发的委托, 该委托可实现如下:void asyncCallback(IAsyncResult ar){ Console.write("发送完毕");} 用的是tcp,我目前想实现的就是判断客户端接收完了我发送的数据,然后服务端再继续执行下一次发送,当没发送完时把这个线程锁住,不执行发送。因为如果不判断是否接受完毕的话,在服务端发送过去后,感觉堵塞了,在客户端接收数据接收到一起去了。 其实Socket 只是负责 能够 发送 接收 数据,你这些 应用控制逻辑 应该在你的 数据里面进行定义, 就是定义 数据祯 格式, 1。tcp/ip是可信任的连接一般不会出现丢包现象2。发送端 发送的数据 是先放送到socket的底层缓冲区的,所以有时候你的接受端还在接收处理的时候,发送端的下一次数据都可能已经发送完成(小于缓冲区size),所以要满足你的需要最好还是用4楼的方法。3。因为数据量过大在发送的时候就有可能造成接受端在处理的时候发送的数据已经超过缓冲区的大小从而造成阻赛或者抛出socketexception,所以如果只是保证发送成功的活可以在每发送一部分之后就sleep 一下,然后再发送 怎么判断这个结果是不是过了一天? 这个四舍五入的问题也太怪了吧? 我调试程序的时候提示LoaderLock是什么意思啊? 用remoting实现类似QQ聊天程序 弹出窗体不获取焦点 在dataGrid中嵌入combobox 这么写的好处 关于SQL语句的问题,请帮帮忙? 各位请进来看看~~ 去女朋友家,头疼!请出个主意!!!肯定给分! VS2005做的cs winform程序,并且部署好了,在VISTA下运行需要装什么 DataGridView自定义列式样中怎么使用自定义事件
{
Console.write("发送完毕");
}
2。发送端 发送的数据 是先放送到socket的底层缓冲区的,所以有时候你的接受端还在接收处理的时候,发送端的下一次数据都可能已经发送完成(小于缓冲区size),所以要满足你的需要最好还是用4楼的方法。
3。因为数据量过大在发送的时候就有可能造成接受端在处理的时候发送的数据已经超过缓冲区的大小从而造成阻赛或者抛出socketexception,所以如果只是保证发送成功的活可以在每发送一部分之后就sleep 一下,然后再发送