58实习一轮面试面经1. 你了解Java网络通信吗?请写一个socket通信的例子。答:写了一个最简单的;
2. 这是一个单线程的,如果有多个客户端呢?答:可以用多线程取处理,还可以用线程池进行优化;
3. 线程池的作用?答:避免重复建立连接耗费资源,可以做限流;
4. Java的io流都有哪些?答:有字符流和字节流;
5. 怎么把一个字节流转成一个字符流?答:用了一个包装类,具体名字忘记了(后来看了以后知道是InputStreamReader);
6. tcp是怎么保证可靠传输的? 答:确认重传、滑动窗口;
7. Java线程间是怎么通信的?答:wait/notify await/single;
8. wait/notify有什么必要操作或前提?答:需要加锁;
9. syncicked为什么可以保证原子性?答:entryList;
10. voilited是怎么保证可见性的?答:mesi协议、内存屏障;
11. 操作系统内存管理是怎么做的,能具体说说嘛?答:不太清楚;
12. Linux下怎么看内存情况?答:top命令;
13. top命令都看哪些参数? 答:当时没回答上来,面试官提示说是看swap区是否频繁替换;
14. 写一下树的层次遍历,要锯齿状的?
15.介绍一下项目的架构?
16. electric search为什么快?答:当时答完面试官说不太对,后来了解应该是会定时生成新的倒排文档,不知道对不对。
面试感受:不好;面试难度:有难度;面试来源:校园招聘