社区
C#
帖子详情
关于UDP的receive问题
broadury
2005-06-11 07:24:20
要实现基于UDP的可靠文件传输.就需要对每一个包都标上序号.将其发送之后还要receive对方的确认信息。但同时需要receive其他主机的请求。这样的话,某一时刻,当接收到一个报文的话,我应该如何处理呢?
如果使用多个线程,每个线程都receive,那会不会被不该接收的线程接收了呢?
应该如何解决呢?
...全文
425
6
打赏
收藏
关于UDP的receive问题
要实现基于UDP的可靠文件传输.就需要对每一个包都标上序号.将其发送之后还要receive对方的确认信息。但同时需要receive其他主机的请求。这样的话,某一时刻,当接收到一个报文的话,我应该如何处理呢? 如果使用多个线程,每个线程都receive,那会不会被不该接收的线程接收了呢? 应该如何解决呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lookie
2005-06-16
打赏
举报
回复
你的设计思想有问题,几个接收线程一起接收,那就天下大乱了。
应该只有一个接收线程接收,这是主线程,当接收到一个请求后,新建一个线程进行处理。原来的接收进程继续接收。这样就行了。
broadury
2005-06-11
打赏
举报
回复
我也想,但是我们要做网络作业.要求就是用udp实现的.郁闷
dazhu2
2005-06-11
打赏
举报
回复
你用tcp不是更好控制,采用异步
siugwan
2005-06-11
打赏
举报
回复
gz
broadury
2005-06-11
打赏
举报
回复
但是每一个线程需要判断发送超时,这是通过接收超时来实现的。所以,每一个线程都需要receive,这样的话,就不能只用一个线程接收了
ivorstar
2005-06-11
打赏
举报
回复
可以模仿Tcp的控制机制啊,或者更简单的:在你的应用层协议建立连接时,让接收和发送端商定一个值,在每一个数据报的报头都加入这个值,但是觉得不能使用多线程receive,处理不好应该会被其他线程误收,可以在程序中维持一个发送线程的列表,但是用一个线程接受所有的确认报文,然后看这个报文对应哪个发送线程。
提供点建议,仅供参考
Android
UDP
接收发送demo
Android
UDP
send re
ceive
demo 16进制 接收 发送
基于MFC对话框的
UDP
客户端服务器端程序
1.2当服务器读取线程接收到数据时,将保存数据源的ip地址以及端口,将数据以及数据的源在re
ceive
edit控件中显示出来,并将数据源在client中显示出来.如果是第一次接收到数据,将使能send按钮. 1.3当点击send时,将读取...
服务器开发基础-
udp
/ip网络模型
课程概述 这部教程是windows网络编程课程的第二部分课程:基于
udp
/ip协议的网络模型 网络编程是互联基石,是程序猿基础必备技能,咱们这部
UDP
/IP课程为大家介绍有关于
UDP
/IP基本理论知识的分析,以及5个常用的网络...
1)
UDP
Packet Lost - re
ceive
buffer errors
最近公司项目遇到一个
UDP
丢...
UDP
Re
ceive
Packet 过程 首先网络报文通过物理网线发送到网卡 网络驱动程序会把网络中的报文读出来放到 ring buffer 中,这个过程使用 DMA(Direct Memory Access),不需要 CP...
C#
Udp
Client 结束Re
ceive
()方法的阻塞
关闭窗体时,怎样结束Re
ceive
方法的阻塞? 答案是自己给自己发一个消息,随便什么内容。 Console.WriteLine("等待连接..."); byte[] bytes = listener.Re
ceive
(ref RemoteIpEndPoint);
Udp
Client
udp
...
C#
110,535
社区成员
642,575
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章