社区
C++ 语言
帖子详情
问3个socket的简单问题,呵呵送分。
JavaNet的牛肉粉丝
2009-04-11 08:53:30
1.客户端有一个1G的文件发送给服务器,那我开的缓存区是10KB,这个缓存够不够啊,能不能再大点啊。
2.因为是1G的文件,每次10KB,那要发好多次数据包,我想问客户端是不是要等服务器收到数据包,在发送通知告诉客户端继续发呢?还是客户端一次性while发完不管服务器收没收到。
3.我这个WSAAsyncSelect模式,send是阻塞还是非阻塞啊?明白了的话我应该会知道第2问了呵呵。
...全文
116
6
打赏
收藏
问3个socket的简单问题,呵呵送分。
1.客户端有一个1G的文件发送给服务器,那我开的缓存区是10KB,这个缓存够不够啊,能不能再大点啊。 2.因为是1G的文件,每次10KB,那要发好多次数据包,我想问客户端是不是要等服务器收到数据包,在发送通知告诉客户端继续发呢?还是客户端一次性while发完不管服务器收没收到。 3.我这个WSAAsyncSelect模式,send是阻塞还是非阻塞啊?明白了的话我应该会知道第2问了呵呵。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hiboys
2009-04-11
打赏
举报
回复
1看服务器性能设置缓冲。
2.对底层api没把握就用语言的封装库来做。不一定比自己的效率差。发1g的文件,你不会是做嵌入开发吧?
xumaojun
2009-04-11
打赏
举报
回复
主要是看你用什么方式通信,Tcp,Udp,其中tcp会保证数据传到服务器,udp就不能保证了
ylywyn136
2009-04-11
打赏
举报
回复
1.10KB的缓存也算可以,不过也可以再大一点,多试试
2.因为是1G的文件,每次10KB,那要发好多次数据包,我想问客户端是不是要等服务器收到数据包,在发送通知告诉客户端继续发呢?还是客户端一次性while发完不管服务器收没收到。
一般TCP的话,连接自动控制的,发送时检查已发字节数保证发送完,接收时保证接收完就行了。所以应该不用自己来确认接收通知
3.非阻塞
morris88
2009-04-11
打赏
举报
回复
1. 一般说来,这个1G的文件你会写到硬盘的吧。所以10KB的缓存也算可以,不过也可以再大一点
2. 一般客户端直接while完吧,由tcp协议来保证可靠性
3. 如果没有特殊设置,那个send就是阻塞方式的。
glacier3d
2009-04-11
打赏
举报
回复
1、一般可以更大,用setsockopt(pObj->trans_sd, SOL_SOCKET, SO_RCVBUF, (char*)&bufSize, sizeof(bufSize)等从大到小进行尝试设置即可
2、一般TCP的话,连接自动控制的,发送时检查已发字节数保证发送完,接收时保证接收完就行了。所以应该不用自己来确认接收通知。
3、大文件窗口一般用阻塞的TCP吧。当然,如果是WSAAsyncSelect模式的话,send()当然是非阻塞了。
猫已经找不回了
2009-04-11
打赏
举报
回复
1.客户端有一个1G的文件发送给服务器,那我开的缓存区是10KB,这个缓存够不够啊,能不能再大点啊。
反正你不可能一次传完1G的数据,分多次传就是了。
2.因为是1G的文件,每次10KB,那要发好多次数据包,我想问客户端是不是要等服务器收到数据包,在发送通知告诉客户端继续发呢?还是客户端一次性while发完不管服务器收没收到。
等服务器收完包,你再传,不然,缓冲区满了,新数据就会被丢弃。
3.我这个WSAAsyncSelect模式,send是阻塞还是非阻塞啊?明白了的话我应该会知道第2问了呵呵。
WSAAsyncSelect自动是非阻塞模式。
python3 中
socket
的
简单
使用
本文介绍了Python3中
socket
的使用,包括UDP和TCP协议的基础操作。讲解了如何利用
socket
进行数据发送与接收,创建
简单
的聊天室以及TCP文件下载的示例。
Android
Socket
简单
介绍
本文介绍了Android中
Socket
的基本概念和使用方法,包括服务端和客户端的创建、连接与通信。通过一个
简单
的示例,展示了如何在Android应用中实现
Socket
连接,以及如何收发消息。读者可以借此理解
Socket
在Android开发中的应用。,
用VScode 在Windows下写
简单
的
socket
通讯
本文介绍如何在VSCode中配置Windows环境下的
Socket
编程,并解决常见
问
题
,如编译错误和警告,提供了一个
简单
的客户端示例。
关于AS3
Socket
学习
本文详细介绍了AS3中的
Socket
连接,包括TCP、HTTP与
SOCKET
的区别,强调了
Socket
在游戏开发中用于实时同步的优势。通过实例展示了如何建立
Socket
连接、发送和接收消息,并解释了为何在游戏开发中通常使用
Socket
与ByteArray,讨论了
Socket
的断包、多包、少包和粘包
问
题
。
基于
socket
的
简单
网络程序设计
这篇博客介绍了如何在Windows环境下使用MFC和
Socket
进行
简单
的网络程序设计,包括TCP和UDP方式的网络编程模式。内容涵盖从创建工程、Winsock初始化到编译运行TCP客户端与服务器,以及UDP客户端与服务器的实现,旨在帮助读者掌握流式和数据报
socket
的编程技巧。
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章