阿里电话面试总结(人生第一次面试!!)

    在图书馆看书的时候,突然接到一个电话,一眼看去就是推销房子的那种,可是地点显示是杭州就接了。对面说他是阿里菜鸟网络的,我就知道是面试电话了。我就说你等我三分钟,我得从图书馆出去才能大声说话。他很和蔼,说不用挂电话,就这样我就跑出去了。

    接下来直奔主题!!

    1、你知道BIO和NIO吗?

答:(心里想:一上来就问这么难的东西,在搞什么啊)但还是很温柔得说我只知道BIO是Blocking-IO阻塞式IO,NIO是Non-Blocking非阻塞式IO,其他的我就不知道了。

面试官:这样啊,好的。

    2、你知不知道线程池有哪几种创建方式?

答:有一个Executor接口,可以用ExecutorService 实现四种创建方式...还没等我说完,对面又来一个问题

    3、那如果我是用newCachedThreadPool来创建的,有什么缺点呢?

答:太紧张了心情!!这是无界得,能不断得创建线程...零零散散说的乱七八槽,还是面试官帮我总结了我说的话。

面试官:你的意思就是说会占用大量的系统资源是吧?

我:差不多吧。(我也不知道这是不是正确答案啊!!)。接下来面试官抛出更深的问题。

   4、假如现在coreSize有10个,maxSize是100个,阻塞队列长度是100,现在coreSize的10个在Running,这时第11个线程来了怎么办?

答:这个我答的不是很好,但是这方面得知识我还是看过的,可还是没能答得很完美,导致面试官一直在重复:我是说....,可能我真的没答好吧。

   5、那我们换个问题:你知道HashMap吗?HashMap和conCurrentHashMap的区别

答:这个问题我已经看了不下五遍了,就说HashMap不是线程安全得,后者是线程安全的。后者使用更细粒度的锁,加快访问速率。

追问:后者是怎么线程安全的,segment是怎么加锁的。

答:这个就不知道了。

面试官:哦,好的,拿下一个问题。

    6、进程创建线程有限制吗?

答:这个我不太清楚欸。(挂了电话才想起来线程是共享进程的资源的,应该随便说点什么,而不是说不知道就完了,虽然我现在也不知道什么是正确答案)。

    7、你怎么跟踪线程?假设现在程序有一个线程飞了,你怎么查找?

答:(这个真的不知道,由于多线程编程没经历过,所以不知道啊)这个我也不太清楚欸。

面试官:好的。

正确答案:

strace -p pid 其中pid为线程ID,可以跟踪某个线程

strace -fp pid其中pid为进程ID,可以跟踪该进程的所有线程

    接下来可能面试官不想问问题了(可能对我没兴趣了),就说你现在是大三吗,可能六月份才有时间对吗?我说是的。然后他问我有什么问题要问的吗?然后接下来的时间才是我最舒服的状态了,因为就单纯的聊天了嘛,这个我在行。我说你有什么建议给我吗?我知道我今天答得不是很好。他让我看看基础的东西。然后我又把大一到现在的经历,用了三分钟简单的聊了一下,也不至于尴尬,面试官一直在说嗯,嗯,嗯(可能在想,说吧,看你能有什么花头)。

    最后总结一下:首先能有这个电话已经很满足了,这是阿里对我简历的肯定,但是想进阿里这个大厂真的不是很好进的,基础的问题一定要会,而且你要答得完美,很容易你就答得零零散散,不懂的问题以后也别直说不知道,这样面试官可能会觉得你是个很容易放弃的人。我哥和我说,你可以试着这样回答:这个问题我不清楚,但是我猜测会是这样这样那样。(这几天真的很感谢我哥的帮助)。也怪我大一大二的时候太贪玩了,债总是要还的。可能也不会有第二面了,但是这何尝不是一个好的经历呢?这并没有打败我,而是让我奋力前行。

发布了9 篇原创文章 · 获赞 1 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/yanpeng0823/article/details/88571000