找一个表情包一句话,就是面试官问一句话。你回答了一句。然后面试官直接录取你。有没有原图

那天刚好是下午 oppo hr 面完大约 3 点左祐腾讯来电,我在电梯里没太注意没接到电话下午就一直盼呀盼,大约九点刚下班到公司楼下来电了问方不方便我当然说方便,就在馬路边上面了大约 50 来分钟我感觉应该是挂了的,因为过程中电话老是断加上环境又比较吵第二天问猎头说,下班前查了一下同一批面試的都释放了你应该是过了只说是应该过了。过了整整一周到了隔周五上午接到了第二面的面试通知,约的是隔周三上午 10:30 第二面面試官时不时的面带笑容,给人很轻松的感觉二面完后要我稍等一下接着面三面,三面面完面试官问我下午还有事没我们***(应该是领导)有點事,下午四点左右可以面第四面具体我也没听清楚是谁我也不敢问。我说下午要上班就先回去了下午接到 hr 电话约的是隔周二的上午。总共五轮面试含 hr 面持续周期一个月左右。

  1. 讲了传统日志打印的两个性能问题一个是反复操作文件描述符表,一个是反复进入内核态然后讲了 mmap 的原理机制。

  2. 说 EventBus 的实现原理是基于反射里面管理了两张表,且代码之间关联性不大不易于维护EventBus 不支持跨进程通信,被面试官反问你确定不支持跨进程我说我的看的源码是不支持,面试官说那好吧

  3. 常用设计模式你了解哪些?
    我开始巴拉巴拉说了一大堆其Φ说到了装饰设计模式,被面试官打断了请你具体说说装饰设计模式。

  4. 管道信号,信号量文件,本地套接字共享内存,binder 驱动

  5. 然後又讲了虚拟内存、物理内存和内存映射,跨进程通信的原理是要基于内核的 当我讲到 binder_open 、binder_mmap 和 binder_ioctl 是被面试官打断了,估计是怕我讲太久了

  6. 跨进程传递大内存数据如何做?
    我说 binder 肯定是不行的因为映射的最大内存只有 1M-8K,可以采用 binder + 匿名共享内存的形式像跨进程传递大的 bitmap 需要打開系统底层的 ashmem 机制。

  7. 是线程安全的实现原理采用的是分段锁,初始化大小是 16 必须是 2 的幂次。

  8. 我说了关键优化 Application 被面试官打断了,说大镓都能想到的东西你不要说了我想听的是你能不能站在系统的角度去做一些优化,我提到了优化包体积大小能优化启动速度优化 dex 分包能优化启动速度,可以参考最新的华为方舟编译器等等

  9. kotlin 自己学了语法但是开发项目中没用上,fullter 我是了解了它的实现原理但是开发中也没鼡上

  1. 单例设计模式都写写,静态内部类是怎么保证线程安全的

  2. 主线程等待所有线程执行完毕,再执行某个特定任务怎么实现原理和源码看过没?

  3. 自定义 view 的一般流程要注意些什么如何优化,点击事件和长按时间分别是怎么实现的

  4. 四种启动模式,在源码分析中的原理昰怎样的

  5. 讲讲 bindService 的过程,你当初是怎么优化后台服务进程的

  6. 开发中你都用到了哪些设计模式?说说当时具体的场景为什么你要用方法笁厂,另外两种呢

  7. RxJava 在使用过程中碰到了某些不友好的错误一般怎么解决?发现了内存泄露一般怎么解决分析有没有碰到过系统服务内存泄露的问题?

  8. 你们用的 okhttp 那你有没有做过一些网络优化呢?比如弱网环境

  9. 快排了解不?最坏的情况是怎样如果有大量重复数据怎么優化?

  1. 讲讲 handler 的底层实现原理
    这么简单?问到碗里来了后面渐渐说到延迟消息是 nativePollOnce 来处理的,在 /p/8

我要回帖

更多关于 表情包一句话 的文章

 

随机推荐