微信基础团队 客户端开发 一面面经

先是做了个AI面,全是简答题:

1、输入url到http请求响应,两台机器用HTTP找到对方,访问一个网页的过程

2、线程的多少状态,怎么切换

3、在进行UI渲染时,怎么降低主线程渲染压力

4、做一个电子书客户端,用户快速翻页,要怎么优化性能?

说完问题后一分钟时间回答,最后一个问题时还会根据你的回答再问一些问题

正式面试:

1、智能指针,shared_ptr是线程安全的吗?

这里不是很熟悉,我说不是,面试官问除了锁之外还有什么高效方法,没答上来

2、堆栈内存的区别?栈是怎么自己管理内存的?

3、动态链接库相关的一系列问题,先是抛出了一个使用函数的问题,根据我的回答再提问

4、两台机器用HTTP找到对方(和访问网页的过程的差不多),也是从这个问题开始,根据回答进一步问了很多问题

5、假如路由器发现现在要发的包目的和源IP是一样的,怎么处理?

手撕:实现一个懒汉式,线程安全的单例模式

全部评论
面了一小时吗
点赞 回复 分享
发布于 11-20 22:02 河南
感觉是同一个面试官
点赞 回复 分享
发布于 09-22 00:08 湖南
楼主回答的咋样,为什么没过呢,过几天我也要去面试这个
点赞 回复 分享
发布于 08-06 15:26 广东
居然有APEX老登,以及校友OC了吗
点赞 回复 分享
发布于 07-14 21:25 广东

相关推荐

11-27 16:10
武汉大学 Java
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-17 09:20
点赞 评论 收藏
分享
11-25 10:02
复旦大学 Java
一面:简历项目介绍一下项目内容怎么用定时任务调度解决分布式事务问题缓存穿透、雪崩、击穿是什么为什么要用消息队列,rabbitmq相比其他消息队列有什么特点java异常了解吗synchronized锁的实现(猜测问的是锁升级)多线程了解吗(猜测问的是实现方式)java内存模型是什么gc了解吗(猜测问的是死亡对象判断、垃圾收集)操作系统linux如何查看文件前5行(head -n 5 filename)cpu满载如何排查问题孤儿进程和僵尸进程进程、线程和协程的区别和作用进程通信方式动态链接和静态链接的区别数据库mysql底层数据结构了解吗(B+树)怎么选择主键左连接和右连接的区别redis底层数据结构(猜测问的是键值对和8种数据结构)redis单线程了解吗计网三次握手和四次挥手过程为什么TIME_WAIT要等待2MSL多路复用了解吗客户端从输入网址到显示网页内容经历的过程(解析域名、建立连接、请求与回应、解析网页)其他RPC了解么手撕算法LRU缓存给定一个数组,求和最大的连续子数组(前缀和+哈希表)反问:能过的话什么时候二面二面:简历项目介绍一下项目内容Spring Security+JWT实现用户认证的原理是什么怎么基于RBAC分配用户权限用户-角色-权限的方式来分配权限有什么缺点(为用户分配权限必须创建角色,可以通过用户-权限方式来解决)怎么用定时任务调度解决分布式事务问题还了解多少分布式事务解决方案javajava内存区域是什么局部变量和对象分别存储在哪里垃圾收集算法有哪些垃圾收集器有哪些,介绍一个熟悉的从写完一段java代码到执行经历了什么,类加载过程(双亲委派模型)Spring介绍下Spring核心原理(IoC和AOP)如果自己写一个IoC框架,核心方法是什么(答了HashMap存储Bean对象)提问:愿意转c++吗,有没有困难闲聊:问了英语成绩、文体竞赛、个人生活等,感觉像hr面会聊的问题
点赞 评论 收藏
分享
评论
3
12
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务