UDP的一些疑难杂症(_杰森大师)

15 篇文章 5 订阅
13 篇文章 0 订阅

UDP疑难杂症目录(_杰森大师)



前言

在使用UDP的时候,我们经常会发现一些奇奇怪怪的bug。而有一些查了半天也不知道是为啥会这样


UDP使用方面

当写完程序运行UDP接收直接就获取数据关闭socket进行下个循环的?
1.可能是因为你的UDPsocket在刚开的时候就绑定端口其实已经被调用了,例如你创建8888端口,但是你前面设置好忘记把关闭socket加上,后面再加上的时候,socket并不会因为你关闭程序而关闭,可以使用doc来查询端口是否被占用了
如何查看某个端口被谁占用

1.开始—->运行—->cmd,或者是window+R组合键,调出命令窗口。
2.查看被占用端口对应的PID,输入命令:netstat -aon|findstr “8888”,回车,记下最后一位数字,即PID,这里是1010。
3.继续输入tasklist|findstr “1010”,回车,查看是哪个进程或者程序占用了8888端口,结果是:cpp程序.exe。
4.结束该进程:在任务管理器中选中该进程点击”结束进程“按钮,或者是在cmd的命令窗口中输入:taskkill /f /t /im cpp程序.exe (cpp程序就是你的进程名字)

为啥获取到的数据是乱码?
1.可能是发送过来的数据是16进制,而你没有去对应进行16进制解析
2.可能你的缓存大小没有设置好,所以导致接受超过大小而导致的出现乱码
3.可能是你的结束后的初始化没去设置导致的

文章会持续更新

总结

UDP经常是因为一些小细节而导致出现这种情况

素材来源于jiesengmianfei.cn

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值