淘宝 客户端 三面
- self-intro
- C++
- coredump怎么产生的?
- 内存泄漏怎么产生?怎么解决?
- 指针操作会出现哪些问题?怎么解决?
- unique_ptr需要注意什么?shared_ptr需要注意什么?
- 构造函数(no)和析构函数(yes)可以是虚函数吗?
- string和char []怎么相互转换?
- const char* -> string 直接拷贝构造/赋值
- string -> const char* cstr = str.c_str();
- string -> char* 需要自己分配内存(要确保安全释放)
- 项目1
- 存放弹幕的文件为什么考虑json,没有考虑传输更快的protobuf?还有哪些传输格式?
- 弹幕存在哪?数据库?存在文件是不是io开销比较大?怎么解决?加缓存?
- 文件都保存在本地的话,是不是在多服务器(分布式)的情况下有问题?
- 你怎么提高你的首屏加载速率的?除了切片你还了解过其他的方式吗?其他协议or项目?
- 你怎么使用c++来广播到所有观看同一视频的用户的?怎么保证广播的是正在看某一视频的用户?(user_id-vid标识)
- HTTP和HTTPS的区别,TLS传输层协议,TLS1.2四次握手,TLS1.3两次握手
- 为什么选用HLS协议?没有用其他协议?(跨平台PC/IOS)
- ffmpeg你还了解哪些?(视频流mkv/音频流aac/字幕流srt)视频编解码/视频参数
- 看过ffmpeg源码吗?实现细节?
- 项目2
- 项目背景是什么?你知道现在的这个整体项目做得怎么样了吗?
- 为什么用select而不是epoll?
- 日志系统怎么实现?
- 怎么测试开发板间的通信是正常的?
- 这个项目用到了哪些设计模式?(策略模式)
- 算法题
- c语言如何判断一个操作系统的字节序?(char* 指向 int)
- 找出某个大整数的所有质因数(复杂度分析)
45min