TP-Link 一面面经 & 二面面经


时长约 20 mins
针对项目 简历展开
项目介绍

1.分布式事务如何保证一致性
2.高可用系统
3.JVM内存模型,垃圾回收机制
4.三个线程轮流打印 ABC
贴一个常用的.当然还可以用 lock 锁做
public class ThreadTest {

    private Object lock = new Object();
    private int count = 0;

    public void printABC(int flag){
        for (int i = 0; i < 10;) {
            synchronized (lock){
                while (count%3 != flag){
                    try {
                        lock.wait();
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
                count++;
                System.out.print(Thread.currentThread().getName());
                i++;
                lock.notifyAll();
            }
        }
    }

    public static void main(String[] args) {
        ThreadTest threadTest = new ThreadTest();

        new Thread(()->{
            threadTest.printABC(0);
        },"A").start();

        new Thread(()->{
            threadTest.printABC(1);
        },"B").start();

        new Thread(()->{
            threadTest.printABC(2);
        },"C").start();

    }
}

ABCABCABCABCABCABCABCABCABCABC
Process finished with exit code 0



然后面试就突然结束 , 还挺意外的.

二面

1.线程的状态?
2.wait方法和 sleep() 方法有什么不同?
3.notify 和notifyall ?
4.Java 有哪些方法或方式用来保证线程安全?
5.synchronized 关键字?
6.synchronized 用在静态方法和成员方法有什么差异?
7.ThreadLocal 的原理?
8.Java 反射机制?用在的场景?
9.Spring 框架中有哪些典型的反射机制?
10.分布式生成唯一 ID 的方案有哪些?
11.提高表检索的效率的方式?

反问:


#面经##TP-LINK#
全部评论
也可以试试《去哪儿》哈 第一批笔试今天已经开始了,速投 内推:https://www.nowcoder.com/discuss/732239
点赞 回复 分享
发布于 2021-09-13 20:32
+1突然结束 应该是同一个面试官……
点赞 回复 分享
发布于 2021-09-13 22:50
楼主base 是深圳吗?
点赞 回复 分享
发布于 2021-10-06 21:34

相关推荐

评论
1
19
分享

创作者周榜

更多
牛客网
牛客企业服务