在你closesocket之前,有些数据已经在传输网络上了,你close并不影响这些已经在传输网络上的数据。通常情况下,应该先shutdown()在close,以保证在传输网络上的数据正确性
解决方案 »
- ToolBar工具栏 按钮按下时长亮 的方法是什么
- 内存泄露??
- 如何解决这个错误?Hits error LNK2005: _DllMain@12 已经在 MSVCRTD.lib(dllmain.obj) 中定义
- 如何求一人整型数据的长度?
- 请问如何在程序里改变菜单项的文字啊
- 请问:如何在对话框大小改变时调整一个CPropertySheet的大小?
- 请教高手,小弟我第一次设计类,请问这个代码对么?我想用泛型算法
- 为什么在vc中 #include <ntddk.h> 或#include <wdm.h>出错?
- .怎样创建一个新的线程,使它拥有所有全局变量的另外一份拷贝???
- 请教 smtp 的问题
- CFile 的问题
- 数据集指针定义问题sdk
按你这样试了下,客户端还是会连续收到数据,数据是关闭前最后一次send的数据
按你这样试了下,客户端还是会连续收到数据,数据是关闭前最后一次send的数据这个怎么说呢,记得以前听过“协和客机“的一则趣事是这样说的:
你在某一点喊了一声,然后迅速开着你的协和客机朝着你喊的方向开过去,你会源源不断的听到你刚才喊的那句话。这则趣事本意是告诉我们,协和客机可以超音速飞行。但是我用这件事告诉你,加入你喊了一句话后,如果你突然被外星人的激光束打中,灰飞烟灭,但是你喊的那句话其实还在空气中传播,直到它能量耗尽为止。之所以告诉你在close之前shutdown一下,等于是说:我要出门的,你们都不要来了,来了也没人在家,但是如果有人已经在来的路上了,你是没辙的,要么你直接锁门让这些在路上的人吃闭门羹,或者等这些人来了以后在锁门。如果还不理解,那就无能为力了
关闭连接是单向的,向对方说我不再发送数据了,可以接收,等待对方关闭
大概看了下,是基于MFC的,我这个问题是在Console控制台上看到的
大概看了下,是基于MFC的,我这个问题是在Console控制台上看到的你认真看看,所有通信类都是采用Win32API封装。Demo使用时用的MFC而已,你把使用方法照搬到你的Win32工程就行。