4.10 4399一面面经 25春招C++游戏开发工程师

之前海投打开4399官网,结果没有暑期实习,但想着打都打开了,就投递了。

这是我 腾子之外第一个约面的公司

===

一面25min
面试官反馈很好,很认真

1. 聊项目
第一个项目 聊天服务器
reactor 和 proactor 区别
epoll原理,为什么会有高并发呢
select,poll,epoll区别;如何快速处理的呢?
边缘触发和水平触发的区别 (EPOLLONESHOT,我要放置多个线程处理同一个文件描述符(假如又发生了IO呢))
线程数量怎么确定的?会动态涨吗,比如任务特别多的时候?
有压测过吗?(500QPS)
聊细节,1W个连接能保持吗?(答得很迷,答现象就行,面试官没有为难)

第二个项目 日志器
怎么写的 (双缓冲区)
数据怎么同步的
智能切换缓冲区什么意思 ,效率怎么测的
双缓冲区会卡住吗,日志来的太多太快怎么处理 (阻塞)
有日志级别吗,怎么做的,在不同文件吗,就是head不一样? (不同的宏函数:fatal_log,info_log)
文件有错误,或者磁盘写满,日志落不了地如何处理?

2.发了个结构体,问32位机器下的 size

class A{
public:
int f1;
static int f2;
int func1();
virtual int func2();
};

sizeof(A)

(虚函数指针刚开始没答,面试官提示了)

64位机器下呢?(再次提示,有内存对齐)

3. Linux 系统 用什么命令检查有哪些连接?有哪些命令可以检查网络聊天状态,端口没有监听怎么办?
(不常用,用的时候会查)

4. 讲一下套接字网络服务器从启动到关闭会执行哪些调用(关闭答的不清楚)

5. 服务器崩了的情况 (JSON {} 匹配,压测粘包)
会直接挂掉吗?(不会)

6. 服务器解析的JSON吗 (我现在用Protobuf)
二者有啥区别,一个是二进制的一个是JSON是吧?

Protobuf的压缩原理清楚吗?(看过int的重新编码)

包是固定的吗? (K-L-V,key后续可以拓展其他协议)

7. 有没有用过内联函数?

8. 有什么想问的?
(我实习入职,会做什么?)
先做简单的业务,服务器开发的话,实现玩法战斗流程,活动什么时候开,伤害计算,protocbuf
慢慢熟悉上手

过了,4399 二面是hr面#牛客AI配图神器#
全部评论

相关推荐

04-02 12:15
武汉大学 C++
【2025校招】4399游戏客户端开发工程师一面 35min3月的一天晚上,迷迷糊糊给4399投递了简历,后面迷迷糊糊做了笔试,今天早上10点爬起来迷迷糊糊面试面试官人很好,体验拉满了,纯聊天来的一开始问我同龄人有多少现在就开始找工作的,我看身边大多升学去了,就说只知道自己一个,后面一看邮件才发现,我投的根本不是暑期实习,是校招岗位!这下真是乌乌又龙龙了本人学的UE,所以问的UE比较多学校里学了什么语言,开设什么课程(只有C语言课,但是很多人工智能机器学习课用Python)什么时候开始学的C++和UE为什么想着去学C++,为什么选择UEC++对比C的优势和不足内存管理->UE里的GC->new malloc、delete free->有没有在自己游戏里用一些独特的内存管理(只看了源码。。)喜欢用的容器(我问面试官,愿不愿意听我讲我最喜欢的vector和unordered_map哈哈)容器库用到的C++特性项目里用到的UE技术遇到了哪些难点怎么解决的网络同步射击帧同步状态同步,安全性,怎么处理职业规划因为有一个项目还在写,所以问后面打算怎么优化(说想给敌人加更强的AI、实现OW里面的那种威胁度音效(黑百合超大枪声))状态机和行为树反问:工作内容(看个人兴趣爱好)工作强度(大)有没有考虑给造梦西游IP弄一个影之刃零那样的重启之作(要我问hr)咋做我的OW音效系统(敌人是否瞄准你、距离)菜菜的我啊,真是迷糊完了。从2月20开始的暑期之旅,只能说是无边落木萧萧下,但是本人心态比较好,还是觉得有不尽长江滚滚来,借此机会也是给这一段日子做个总结,也是为后来的生活立个信标。千言万语还是一句话,打铁仍需自身硬,沉淀之后再重来了。#暑期实习 ##游戏客户端开发面经##毕业季,你想好怎么跟生活对线了吗?#
Mi1ludeer:一面竟然过了,发二面通知了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务