前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >阿里一面面经C++

阿里一面面经C++

作者头像
牛客网
发布2018-08-01 14:26:58
3500
发布2018-08-01 14:26:58
举报
文章被收录于专栏:牛客网牛客网

【每日一语】绝对不要做你的敌人希望你做的事情,原因很简单,因为敌人希望你这样做。——拿破仑

面了一个半小时,感觉嗓子都要哑了……

  Q:做个自我介绍吧

  A:聊项目

  ……(聊了挺久)

  Q:我看你这边github上有一个协程库,能介绍一下协程的概念吗?

  A:协程,用户级,轻量,快,效率高,但是不结合多线程难以利用多核

  Q:能说一下怎么实现的吗?

  A:讲了一下基于ucontext怎么切换上下文

  Q:协程和线程的区别?

  A:调度比较快,不用进内核。单Schedual难以利用多核?

  Q:内存上有什么区别?

  A:同一个CPU上多个协程不会产生临界区竞争。

  Q:协程切换的时机?

  A:定时器,文件阻塞,拿到锁阻塞,函数调用的时候。

  Q:你写的库的对于使用者有什么优势?

  A:……你可以用我的APIbalabala……

  Q:给我一个用你的协程库的场景吧??

  A:YY了一个轮询读文件的场景。

  Q:你这个说到了你维护了一个栈,这个栈是干什么的?栈的维护是你自己做的吗?

  A:维护每个协程的上下文。我就只需要管理这块内存就可以。不是很完善……

  Q:上个读文件的场景,什么时候才会阻塞?

  A:设一个NONBLOCK位,在出错读到EAGAIN的时候就切换出去。

  Q:如果两个都阻塞了呢?

  A:那就没辙了……举了一个很多fd用epoll轮询的场景。

  Q:从你个人角度有没有遇到过比较困难的场景?

  A:balabala……

  Q:说说你实习的项目?

  A:balabala……

  Q:说说map with mutex和sync.Map的区别?

  A:Mutex是悲观锁,而且那个粒度比较大。sync.Map是带缓存的,体验和CAS差不多。

  Q:聊点基础的吧

  A:好……

  Q:sizeof和strlen的区别?

  A:你们都懂得

  Q:一个int大概多大?

  A:32位4个字节,64位8个字节

  Q:int在内存中字节排布?

  A:小端序

  Q:虚函数指针什么时候会出现?

  A:在有虚函数的时候~

  Q:static的作用?

  A:都懂得,这里不展开了

  Q:多个进程同时监听一个UDP端口会怎么样?

  A:不懂……

  Q:你可以了解一下这方面。进程的内存结构?

  A:内核、栈、动态链接库、堆、静态区、代码段、保留区

  Q:静态变量和全局变量在哪个区?

  A:静态区……

  Q:++i和i++的区别?

  A:++i效率比较高。

  Q:虚基类和普通基类的区别?

  A:菱形继承问题

  Q:空类的大小?

  A:1byte

  Q:为啥?

  A:不懂…

  Q:引用和指针的区别?

  A:都是用指针实现的。

  Q:进程间通信?

  A:socket, 管道,消息队列,共享内存

  Q:TCP三次握手?

  A:讲了讲(忘了讲状态转移)

  Q:TIME_WAIT?

  A:讲了讲……感觉面试官不是很满意?

  Q:CLOSE_WAIT呢?

  A:讲了讲……吐槽了一下一般都是代码写得有问题(逃

  Q:epoll有几种类型?

  A:ET,LT。

  Q:调试程序用什么?

  A:gdb,log,valgrind, vs

  Q: CPU高了怎么看? 

  A:free+pprof,看火焰图

  Q:其实C/C++也有类似地工具

  A:嗯

  Q:coredump有了解过吗? 

  A:只用过,不知道原理 

  Q:你可以再了解一下呀。这个还是很重要的。 

  A:好的 

  Q:hash冲突怎么解决? 

  A:拉链和线性探查 

  Q:还有啥要问我的? 

  A:你们这边比较青睐有什么技术积累的人? 

  Q:balabala…C/C++ 

  小哥人超级好,讲话也好听ORZ

  大概一小时后二面通知,说要视频面……还要现场写代码,慌得一批……

作者:明月照相机

来源:牛客网(www.nowcoder.com)

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.07.28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档