blldw 2012年08月07日
使用socket连接服务器的内存泄露问题,有代码
以下代码可在vs2008下编译通过,其中61.135.169.125为百度网站的IP地址,作为测试用。程序产生的问题在于,当用任务管理器查看程序耗占的内存时,发现耗占内存以8K,12k或者更大的数值持续增加。不知道是哪里有问题。请大家提出看法,谢谢~~~~
#include <iostream>
#include <Windows.h>
#include <WinSock2.h>

int main(int, char**)
{
while (true) {
SOCKET s = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
sockaddr_in addr;
memset(&addr, 0, sizeof(sockaddr_in));
addr.sin_family = AF_INET;
addr.sin_addr.S_un.S_addr = inet_addr("61.135.169.125");
addr.sin_port = htons(80);
if (connect(s, (SOCKADDR*)&addr, sizeof(addr)) == SOCKET_ERROR) {
std::cout << "connect error" << std::endl;
}
shutdown(s, SD_SEND);
closesocket(s);
}

return 0;
}
另外同样的问题,但是是boost库中使用asio的,请参见
http://topic.csdn.net/u/20120804/01/fb5259bf-f15c-4062-a7fe-3ef52d0d6305.html?73283
...全文
266 点赞 收藏 9
写回复
9 条回复

还没有回复,快来抢沙发~

发动态
发帖子
网络编程
创建于2007-09-28

7878

社区成员

6.4w+

社区内容

VC/MFC 网络编程
社区公告
暂无公告