码迷,mamicode.com
首页 > Windows程序 > 详细

c#关于udp远程关闭一个连接问题

时间:2018-09-24 19:33:14      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:inf   实例化   control   false   info   soc   eset   服务   远程主机   

20180924

在一个项目使用UDP过程中遇到了这样一个问题,当远程主机有连接的时候服务端发送一条数据到客户端,将不会产生问题,但是如果连接中断之后,再向此客户端发送数据socket将会强行关闭连接,后果就是直接导致此udp作废。

技术分享图片

解决方法:

在实例化UdpClient之后添加:

    uint IOC_IN = 0x80000000;
            uint IOC_VENDOR = 0x18000000;
            uint SIO_UDP_CONNRESET = IOC_IN | IOC_VENDOR | 12;
            myUdp.Client.IOControl((int)SIO_UDP_CONNRESET, new byte[] { Convert.ToByte(false) }, null);

其中myUdp是实例化的对象。

至今未解之谜是为什么在未连接的情况下会强行中断,udp不是不管远程主机的吗?

 

c#关于udp远程关闭一个连接问题

标签:inf   实例化   control   false   info   soc   eset   服务   远程主机   

原文地址:https://www.cnblogs.com/ganzhihui/p/9696217.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!