9.1 一面(50min)1.介绍TCP和UDP的区别和联系?2.C++中创建socket的过程?3.为什么malloc在高并发场景下会有性能瓶颈,内存池项目又是如何针对优化的?4.Thread cache具体是如何实现的?5.为什么哈希桶的访问不需要加锁?6.Thread cache是怎么实现线程独有的?7.TLS在C++中对应的是什么关键字?8.Windows和Linux下分别调用什么接口向系统申请内存?9.C++中实现线程互斥同步的接口有哪些?10.为什么有虚方法的基类的析构函数需要定义成虚函数?11.基类指针调用子类对象是如何判断的(用的哪种类型转换)?12.Git中提交项目到远程仓库的完整命令?13.AVL树和红黑树的区别和联系?14.算法:随机构造一个包含100个元素的数组(每个元素都是100以内的止整数),并进行重新排序,使得最大值位于中间位置,左侧元素单调递增,右侧元素单调递减:之后在屏幕上用*绘制这个排序后的数,形成类似山峰的图形(ACM模式)