需求:由于我是在嵌入式终端操作Socket,所以Socket不能一直链接,只有发送消息时才链接,等过了超时,就算失败,关闭Socket 。
现在我有一个登录,和一个传输图片,用的都是UPD,登录只发送一次,不会丢包,但是发送图片丢包很严重(很多次发送)。
我感觉是用for循环发送的太快了,丢包了,也不知道是不是的。如果一丢包,服务器就不会及时发消息我,不能及时关闭Socket。
现在想怎么避免丢包,由于是刚学Socket 对UDP怎么熟悉。
现在我有一个登录,和一个传输图片,用的都是UPD,登录只发送一次,不会丢包,但是发送图片丢包很严重(很多次发送)。
我感觉是用for循环发送的太快了,丢包了,也不知道是不是的。如果一丢包,服务器就不会及时发消息我,不能及时关闭Socket。
现在想怎么避免丢包,由于是刚学Socket 对UDP怎么熟悉。
解决方案 »
- 怎么在不丢失虚拟机里的文件前提下,找会虚拟机中2003系统的登录密码?
- 求一个winform中treeview实例,其中左边是treeview右边是listview,双击左边节点,能在右边显示出相关详细信息来(源代码)
- StandardIn尚未定向
- 让人狂抓的JS的正侧表达式
- 回复 C#代码时,怎么让他有格式,有颜色
- 两窗口传递问题
- 咨询关于在C#.NET中存储日期格式问题,请高手帮助
- 用代码如何实现对treeview增加节点
- WinForm及WebForm程序最常用到的是数据的增删改,不知道有什么好的方案来简便解决这个问题?
- HttpListner通过url传入中文参数就是乱码 在线等
- C#中能调用oracle传入参数pl/sql table类型的存储过程吗?
- 请教下处理字符串的问题
既然用UDP,就要接受丢包的现实,否则请用TCP。
如果必须使用UDP,而且丢包又是不能接受的,只好自己实现确认和重传,说白了,就是自己实现TCP