tx电话面

 

1.介绍一些项目

2.具体介绍一下整个slam项目里面的各个模块

3.具体介绍一下你做的内容

4.光流补偿怎么做?一阵见血

 

3.问一些计算机网络的知识,tcp滑动窗口,close_wait和time_wait区别,很基础,看过的就知道

 

 

5.问了一些网络编程相关的:

(1)从输入域名到显示网页的整个过程

(2)HTTP协议的格式

(3)Get的具体格式是什么?

(4)客户端socket的过程

(5)connect的过程是阻塞的,应该要怎么解决呢???怎么避免

(6)堆和栈的区别?

   原理很简单,就是先把套接字设置为非阻塞,因为在非阻塞情况下,connect的结果是立即返回的,然后我们再使用select或者poll等机制来检测套接字一定的时间,如果在超时时间内不可写,则认为connect失败,然后需要把套接字重新设置为阻塞,当然如果你不需要在阻塞模式下工作,可以不用设置。

      如上,我们就可以对connect的超时进行可控。
————————————————
版权声明:本文为CSDN博主「clirus」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/clirus/article/details/50577352

1.建立socket
 2.将该socket设置为非阻塞模式
 3.调用connect()
 4.使用select()检查该socket描述符是否可写

 5.根据select()返回的结果判断connect()结果
 6.将socket重设置为阻塞模式

代码实现:https://blog.csdn.net/hj605635529/article/details/74157305

步骤1: 设置非阻塞,启动连接
实现非阻塞 connect ,首先把 sockfd 设置成非阻塞的。这样调用
connect 可以立刻返回,根据返回值和 errno 处理三种情况:
(1) 如果返回 0,表示 connect 成功。
(2) 如果返回值小于 0, errno 为 EINPROGRESS,  表示连接
      建立已经启动但是尚未完成。这是期望的结果,不是真正的错误。
(3) 如果返回值小于0,errno 不是 EINPROGRESS,则连接出错了。
————————————————
版权声明:本文为CSDN博主「hj605635529」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/hj605635529/article/details/74157305

 

重载函数再编译阶段会发生什么事情?优质  右边=--

作者:这么菜怎么办啊
链接:https://www.nowcoder.com/discuss/421912
来源:牛客网
 

  • 因为项目中用到了epoll,那么讲一讲select、poll、epoll是干嘛的,有什么区别(最好从底层实现来讲)
  • epoll中为什么用红黑树,而不用hashtable来管理?插入删除复杂度不是更低吗

 

 

作者:TimDeng
链接:https://www.nowcoder.com/discuss/223563?type=post&order=time&pos=&page=1&channel=&source_id=1_post
来源:牛客网
 

第三个小部分是linux网络编程:

1.进程和线程的区别是什么?

2.进程间通信方式有哪几种?哪一种通信方式最快?为什么?

3.TCP/IP三次握手说一下,为什么要三次握手?两次不行吗?

4.TIME_WAIT的作用?

 

3.函数重载是什么呢?函数重载又是怎么实现的呢?(编译器怎么知道要调用哪个函数?)

4.虚函数是怎么实现的呢?虚表是怎么个原理?

C++多态是什么,底层原理是什么(回答了虚函数的底层原理,忘记说静态多态:重载),然后让我拿画图软件画给他看

讲一下多态?虚函数底层怎么实现的?虚函数指针是每个类一个还是每个对象一个?虚函数指针在实例内存里放在哪,前面中间还是末尾?

静态成员变量和普通成员变量区别?静态成员变量怎么初始化?静态成员变量布局在哪个数据段?普通成员变量呢布局在哪个区?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值