欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > C++自动驾驶面试核心问题整理

C++自动驾驶面试核心问题整理

2025/6/19 21:22:02 来源:https://blog.csdn.net/John_ToStr/article/details/142387497  浏览:    关键词:C++自动驾驶面试核心问题整理

应用开发

        概述:比较基础,没啥壁垒,主要有linux开发经验即可        

        问题:基础八股,如计算机网络、操作系统、c++11等基础三件套;中等难度算法题1-2道。

        

中间件开发(性能优化)

        概述:本身需要深厚的C++功底,所以对于经验要求较高。设计技术面:linux系统、内核、性能优化等比较细分的领域。

        问题:本身岗位上限高(钱多),所以面试的话对于过往的项目经验比较看重,也注重岗位匹配度;当然算法也要能写出来。

算法

        本人不涉及。

常见问题

网络

        先看这个图,回顾下建立连接跟断开链接细节

        

        Q: time_wait是什么?过多是什么原因?会有什么影响?如何优化?

        A: time_wait状态出现在挥手阶段,当处于FIN_WAIT_2阶段的A端收到B端发送的FIN报文并回复ACK后所在状态;主动关闭链接频繁、网络不稳定、系统参数设置不合理;资源占用、拥塞风险;服务端尽可能不断连、内核参数调整如图:

        Q: 四次挥手当处于LAST_ACK阶段的B端没有收到A端的ACK报文,到点重传FIN报文,此时处于TIME_WAIT状态的A端过了2MSL如果没有收到B端重传的FIN报文,该如何处理? 为什么不是4MSL或8MSL?

        A: 如果客户端发送的ack报文丢失,服务端重发的fin报文也丢失了,那么2MSL就不起作用了。那么需要给它设置更长时间??我们设想在一个丢包率为1%的糟糕网络中,两次连续丢包的概率为万分之一,忽略它显然给解决它更具有实际意义

        Q: 为什么业务层要心跳?

        A: TCP的检测时间有点长,我们可以在应用层实现一个心跳机制。

其他... 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词