滴滴一面-Java后端

滴滴一面凉经(视频50分钟)

做下自我介绍

你都做过什么,移动端开发有了解吗?后端,和微信开发,h5,安卓ios,泛前端都有了解吗?你以后的方向是什么?

1、启动两个线程A、B,如何让两个线程像ABABAB这样循环执行?(我围绕join说了下,面试官提醒循环会导致死锁,改口CyclicBarrier)

2、当前线程跑一亿条数据,如何中断线程,在执行run()中如何中断

3、先启动A线程再启动B线程,他们执行的流程是什么样的

4、线程池了解吗,你自己实现一个线程池(开始说核心线程数、最大线程数、饱和策略,存活时间、阻塞队列这类,面试官提醒抛开API自己实现一个单例的线城池,改口具体如何实现阻塞队列,ps:查了一下可以使用enum)

5、你对线程间同步如何理解的,什么情况下线程需要同步(说了synchronized,面试官提醒线程之间同步还是没反应过来,说了synchronized、jmm这些,实际上实现线程间同步可以通过Object的wait和notify,通过Condition的awiat和signal,通过一个阻塞队列,通过两个阻塞队列,通过SynchronousQueue ,通过线程池的Callback回调,通过同步辅助类CountDownLatch,通过同步辅助类CyclicBarrier)

6、在集合中删除所有偶数位置的数据(Iterator、for,不使用foreach)

结束,你还有什么要问我的吗

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

猜你喜欢

转载自blog.csdn.net/FMC_WBL/article/details/100043328