微信游戏(C++)一面凉经

自我介绍
介绍一下你的分布式KV数据库
为什么用raft不用paxos
paxos和raft区别
你的kv存储数据库存储模型是怎么样的
你了解其他的kv数据库的存储模型吗(说了redis的RDB/AOF leveldb的LSMtree)
为什么LSMtree写入速度快?(没很深研究,只知道这个东西)

进程线程区别
协程了解吗(说了golang的goroutine模型)
协程保存什么东西,保存在哪里(说了栈指针,调度挂起的数据,一时把PC忘记了)
估计是看我忘了PC,问我CPU都有哪些东西。。。(这个太久没看,不太记得了,基本功还是不太扎实,只记得有寄存器。。)

linux的线程调度是怎么样的
我反问要问的是不是进程调度,面试官说这两个在linux有什么不同吗,我说了线程的调度可以在用户态去控制;;
然后把CFS那一套说了一下,然后问我调度的红黑树存的是什么,(不记得了,只记得key是vruntime)
然后问vruntime是怎么计算的,是真实时间吗。(我回答了不是,什么时候计算的猜了一下,每次运行前和调度结束后计算)

select和epoll区别 

c++特化是什么(模板那套东西吧,研究不深,就直接说不会了)
换了个问虚函数和纯虚函数区别

智力题:550个瓶子,a和b各可以取7-11个,a先取,问a怎么取可以保证取到第550个。(没答出来)

写题:估计是看我智力题没答出来,一些深入的八股也没答好,来了个解数独,问有多少种解法。
之前写过,框架会了,细节在写的时候还是有问题,最后没写出来。

跪了~

总结:
1. 写代码的细节还是要注意;
2. 看过的东西还是尽可能取往深理解一下;
3. 没事复习一下基础知识,说不定就用得上。
#腾讯面经##腾讯##面经#
全部评论
a先取10个,之后每次和b取的之和是18就行
4 回复 分享
发布于 2021-08-26 16:10
蹲一下智力题
1 回复 分享
发布于 2021-08-26 11:37
linux线程和进程表示方法是一样的,都是同一个task_struct结构体。不同的是结构体中指向虚拟内存的指针和文件的指针不同。linux的线程也是内核线程,也有用户和内核的切换吧?
点赞 回复 分享
发布于 2021-08-25 23:46
微信也有游戏岗吗
点赞 回复 分享
发布于 2021-08-29 12:05
为什么LSMtree写入速度快  这个可以去研究下写内存和写磁盘,转储。主要还是因为写入时是写内存
点赞 回复 分享
发布于 2021-09-01 10:21
和你一个面试官,问的智力题和算法题一样,我也挂了
点赞 回复 分享
发布于 2021-09-01 18:37
你为什么这么快就知道凉了呢?通知了吗?
点赞 回复 分享
发布于 2021-09-02 10:58

相关推荐

2 32 评论
分享
牛客网
牛客企业服务