社区
网络编程
帖子详情
请教一下select函数与send函数的问题?
monk_CD
2011-11-28 08:46:42
问题:
当我调用select函数后,发现有一个套接字可写,然后调用send函数发送数据, 发送后,我是否还需要用SELEct函数判断这个套接字能否可写,然后再次调用Send函数发送数据?
情景:
主要是,我在发送文件的时候,主要想实现:当发送文件的时候,send一个消息通知对方有文件来了,对方接受到这个请求,当对方
确定接受
的时候,返回一个确定接受的消息,然后才开始发送文件!
所以在发送文件的时候,双方要进行确定,所以才会产生上面的问题!
求解释!
...全文
165
10
打赏
收藏
请教一下select函数与send函数的问题?
问题: 当我调用select函数后,发现有一个套接字可写,然后调用send函数发送数据, 发送后,我是否还需要用SELEct函数判断这个套接字能否可写,然后再次调用Send函数发送数据? 情景: 主要是,我在发送文件的时候,主要想实现:当发送文件的时候,send一个消息通知对方有文件来了,对方接受到这个请求,当对方确定接受的时候,返回一个确定接受的消息,然后才开始发送文件! 所以在发送文件的时候,双方要进行确定,所以才会产生上面的问题! 求解释!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
monk_CD
2011-11-30
打赏
举报
回复
[Quote=引用 9 楼 sinservice 的回复:]
引用 8 楼 qweewqpkn 的回复:
引用 7 楼 sinservice 的回复:
引用 5 楼 smwhotjay 的回复:
send一般不用select.都是可写的.
通量未到极限所致。
你发送1G的文件到远程客户端(当然是循环发送),如果不select(或其他重叠操作),你的用户级线程将实际耗费1G的传送时间,白白浪费了。
怎么个浪费法? ……
[/Quote]
感谢你的耐心帮助!
Eleven
2011-11-29
打赏
举报
回复
这个你需要自己定义应用层协议了
「已注销」
2011-11-29
打赏
举报
回复
1 当你不需要发送数据时,当然就不需要select其可写性。
因为socket大多数时间都是可写的,你又不写还连续不停地判断状态,结果造成无谓的CPU浪费。
2 当select到1个socket可写后,第一次send保证不会阻塞,但接下来继续send就可能会阻塞,这取决于网卡的处理速度,网卡的处理速度肯定要慢于CPU写的速度,所以,不停地发送,肯定可以达到buffer充满的情况,而导致写阻塞。
「已注销」
2011-11-29
打赏
举报
回复
[Quote=引用 8 楼 qweewqpkn 的回复:]
引用 7 楼 sinservice 的回复:
引用 5 楼 smwhotjay 的回复:
send一般不用select.都是可写的.
通量未到极限所致。
你发送1G的文件到远程客户端(当然是循环发送),如果不select(或其他重叠操作),你的用户级线程将实际耗费1G的传送时间,白白浪费了。
怎么个浪费法? 能详细说?
[/Quote]
是IO快还是CPU快? 当然是CPU快。
设想一个实验:
如果你循环阻塞发送一个1G的文件到远程,这个过程需要你的线程耗费多少时间?
至少(略小于)1G网络传输的时间。
这个时候,你的线程就相当于跟IO一样慢了,这就是浪费。
monk_CD
2011-11-29
打赏
举报
回复
[Quote=引用 7 楼 sinservice 的回复:]
引用 5 楼 smwhotjay 的回复:
send一般不用select.都是可写的.
通量未到极限所致。
你发送1G的文件到远程客户端(当然是循环发送),如果不select(或其他重叠操作),你的用户级线程将实际耗费1G的传送时间,白白浪费了。
[/Quote]
怎么个浪费法? 能详细说?
「已注销」
2011-11-29
打赏
举报
回复
[Quote=引用 5 楼 smwhotjay 的回复:]
send一般不用select.都是可写的.
[/Quote]
通量未到极限所致。
你发送1G的文件到远程客户端(当然是循环发送),如果不select(或其他重叠操作),你的用户级线程将实际耗费1G的传送时间,白白浪费了。
monk_CD
2011-11-29
打赏
举报
回复
[Quote=引用 2 楼 yanfeiqin 的回复:]
不会,select只是检测是否可以发送数据,换句话说,如果你不要效率的话,不需要select函数都是可以的。
[/Quote]
肯定要效率啊··
smwhotjay
2011-11-29
打赏
举报
回复
send一般不用select.都是可写的.
六月安宝
2011-11-28
打赏
举报
回复
不会,select只是检测是否可以发送数据,换句话说,如果你不要效率的话,不需要select函数都是可以的。
monk_CD
2011-11-28
打赏
举报
回复
就是调用一次SELECT后,多次调用SEND函数,后面的send会出现阻塞么?
77页-中国数字安全产业年度报告(2024)公开版 数世咨询 2024-6(1).pdf
77页-中国数字安全产业年度报告(2024)公开版 数世咨询 2024-6(1)
图像处理基于电磁学优化算法的多阈值分割算法研究(Matlab代码实现)
【图像处理】基于电磁学优化算法的多阈值分割算法研究(Matlab代码实现)内容概要:本文围绕“基于电磁学优化算法的多阈值分割算法研究”展开,结合Matlab代码实现,探讨了图像处理中的多阈值分割
问题
。通过引入电磁学优化算法(Electromagnetism-like Optimization, EMO),利用其全局搜索能力优化多阈值分割的阈值选取过程,以提升图像分割的精度与效率。文中详细阐述了算法原理、实现步骤,并通过实验验证其在图像分割中的有效性,展示了与其他智能优化算法的对比结果,突出了该方法在处理复杂图像时的优越性。; 适合人群:具备一定图像处理和优化算法基础,熟悉Matlab编程的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于医学图像、遥感图像等复杂图像的多阈值分割任务;②为智能优化算法在图像处理领域的应用提供实现案例与技术参考;③支持科研复现与算法改进。; 阅读建议:建议结合Matlab代码逐段理解算法实现流程,重点关注目标
函数
设计与电磁力机制的映射关系,可通过更换测试图像和对比其他优化算法加深理解。
基于51单片机的电子琴设计
本资源文件“基于51单片机的电子琴设计.zip”对应于博客文章“基于51单片机设计的简易电子琴”。该资源包含了实现一个简易电子琴所需的全部文件和代码,适用于学习和实践51单片机的开发。 内容 源代码:包含电子琴的C语言源代码,可在Keil uVision等51单片机开发环境中编译运行。 原理图:提供了电子琴的电路设计原理图,方便用户理解硬件连接和布局。 PCB设计文件:如果需要自行制作PCB,资源中包含了PCB设计文件,可用于PCB打样。 说明文档:详细的使用说明和操作指南,帮助用户快速上手。 使用方法 下载资源:点击下载“基于51单片机的电子琴设计.zip”文件。 解压文件:将下载的ZIP文件解压到本地目录。 阅读说明文档:仔细阅读说明文档,了解项目的基本结构和使用方法。 搭建硬件:根据原理图搭建硬件电路。 编译代码:使用Keil uVision等开发工具打开源代码,进行编译。 烧录程序:将编译好的程序烧录到51单片机中。 测试运行:连接电源,测试电子琴的功能是否正常。
故障诊断pytorch基于CNN-LSTM故障分类的轴承故障诊断研究[西储大学数据](Python代码实现)
【故障诊断】【pytorch】基于CNN-LSTM故障分类的轴承故障诊断研究[西储大学数据](Python代码实现)内容概要:本文介绍了一项基于CNN-LSTM神经网络模型的轴承故障诊断研究,采用PyTorch框架实现,使用西储大学公开的轴承故障数据集进行实验验证。该方法结合卷积神经网络(CNN)强大的特征提取能力与长短期记忆网络(LSTM)对时序数据的建模优势,构建深度学习分类模型,实现对轴承不同故障类型和严重程度的精准识别与分类,旨在提升工业设备故障诊断的自动化与智能化水平。; 适合人群:具备Python编程基础和深度学习基础知识的高校学生、科研人员及工业界从事设备状态监测与故障诊断的工程师;熟悉PyTorch框架者更佳。; 使用场景及目标:①应用于工业设备预测性维护系统中的轴承故障早期识别;②作为深度学习在时间序列分类任务中的典型案例,用于学习CNN-LSTM融合模型的设计与实现;③复现并改进现有故障诊断算法,推动相关科研工作进展。; 阅读建议:建议读者结合提供的Python代码与西储大学数据集进行实践操作,重点关注数据预处理、模型结构搭建、训练流程及结果分析环节,可进一步尝试调整网络参数或引入其他优化算法以提升分类性能。
hanlp-portable-1.8.6 对应模型下载 data-for-1.7.5
hanlp-portable-1.8.6 对应模型下载 data-for-1.7.5
网络编程
18,357
社区成员
64,187
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章