项目开发日报表——第八天

项目开发日报表——第八天

项目名称【苏嵌实训-嵌入式 linuxC 第 8 天】
今日进度以及任务嵌入式Linux C 多任务编程线程的资源保护机制(互斥锁、线程信号量、条件变量)、网络基础、网络编程
本日任务完成情况 (详细说明本日任务是否按计划完成,开发的代码量)编写代码实现线程的互斥锁,编写代码创建服务器和客户端并实现服务器和客户端之间通信。
本日开发中出现的问题汇总1.TCP和UDP;
2. 为什么是三次握手和四次挥手?
3.出现无法绑定套接字的报错?
问题解答1.答: TCP是面向连接的,可靠,速度慢;UDP工作效率高,不可靠。

2.答: 网络通信是全双工的。

3.答: client终止时自动关闭socket描述符,server的TCP连接收到client发的FIN段后处于TIME_WAIT状态。TCP协议规定,主动关闭连接的一方要处于TIME_WAIT状态,等待两个MSL的时间后才能回到CLOSE状态,但因为我们先终止了server,所以server是主动关闭连接的一方,在TIME_WAIT期间仍然不能再次监听同样的server端口。(MSL在RFC1122中规定为两分钟)
解决办法: 在server代码的socket()和bind()之间调用setsockopt函数,让端口号可以重复使用。
本日开发收获学会了线程的互斥锁的使用,巩固了网络基础知识,掌握了服务器和客户端的编程方法并加以实现。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值