当前位置:  开发笔记 > 编程语言 > 正文

c#/ .Net Socket.Shutdown

如何解决《c#/.NetSocket.Shutdown》经验,为你挑选了0个好方法。

我认识到这种类型的问题有很长的历史,但我使用它的方式必须是正确的'.net方式',但它似乎不起作用.

我有一个简单的同步IP服务器守护进程,它执行一个简单的AcceptSocket,做一些东西,socket.send,socket.shutdown,socket.close.我的客户端是另一个简单的C#应用​​程序,它执行URLDownloadToFile.

会发生的事情是URLDownloadToFilefails失败的部分时间(0x800C0008)..认为其下载资源失败.

我的服务器端结束序列是:

socket.Shutdown(Both);
socket.Close();

如果我改成这个

socket.Disconnect();
socket.Close();

(我用sockopt Linger打开以上内容,超时5秒)

这很棒.

我在Shutdown方法上遗漏了一些东西......听起来好像是"魔术子弹"MS希望你用它来优雅地进行退出,最终会发送任何剩余的发送数据.

总而言之,(这可能不对)看起来像关闭..杀死了shutdown()可能正在进行的任何异步处理.

有任何想法吗?

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有