当前位置: 首页 > Linux

撕面试官系列(六):并发+Netty+JVM+Linux

时间:2023-04-06 19:43:53 Linux

并发面试题目(面试题+答案收集方法见首页)现在有三个线程T1,T2,T3,你怎么保证T2在T1执行完T3执行完T2执行完后执行?Lock接口相对于Java中的同步块的优势是什么?您需要实现一个高效的缓存,允许多个用户读取但只有一个用户写入以保持其完整性,您将如何实现它?Java中的wait和sleep方法有什么区别?Java中阻塞队列的实现。用Java写代码解决生产者消费者问题。用Java编写一个导致死锁的程序。你会怎么解决?什么是原子操作,什么是Java中的原子操作?易失键在Java中有什么作用?如何使用它与Java中的同步方法有何不同?什么是竞争条件?您如何发现和解决竞争?你将如何使用线程转储?您将如何分析线程转储?为什么我们调用start()方法的时候会执行run()方法,为什么不能直接调用run()方法呢?在Java中如何唤醒阻塞的线程?Java中的CycliBarriar和CountdownLatch有什么区别?什么是不可变对象,它如何帮助编写并发应用程序?您在多线程环境中遇到的常见问题是什么?你是怎么解决的?Netty面试题目BIO、NIO和AIO的区别?NIO是由什么制成的?.Netty的特点?Netty的线程模型?TCPsticky/unpacking的原因及解决方法?你知道哪些序列化协议?如何选择序列化协议?Netty的零拷贝实现?Netty的性能方面有哪些?NIOEventLoopGroup源码?JVM面试题目内存模型和分区,每个区域具体需要放什么?堆中的分区:伊甸园、生存(from+to)、老年代,以及各自的特点。对象创建方法、对象内存分配、对象访问位置。GC的两种判断方式。什么是安全点?GC的三种收集方式:标记清除、标记排序、复制算法的原理和特点。它们在哪里使用?如果让你优化采集方式,你有什么想法?什么是GC收集器?CMS收集器和G1收集器的特性。MinorGC和FullGC什么时候发生?几种常用的内存调试工具,类加载的几种流程,JVM内存分为哪些区域,每个区域的作用是什么?比如判断一个物体是不是活的?(或者判断GC对象的方法)java垃圾回收机制简介?java中垃圾回收的方法有哪些?Java内存模型Java类加载过程?java类加载机制简述?类加载器双亲委派模型机制?什么是类加载器,什么是类加载器?20、简述java内存分配和回收策略,以及MinorGC和MajorGCLinux面试题Linux内核锁主要有哪些类型?Linux中的用户态和内核态是什么意思?如何申请大块内核内存?用户进程间通信的主要方式有哪些?通过伙伴系统申请内核内存有哪些功能?Linux虚拟文件系统的关键数据结构有哪些?(至少写出四个)是文件或设备的操作函数存储在哪种数据结构中?Linux中的文件是什么?创建进程的系统调用是什么?调用schedule()切换进程有几种方式?进程调度的核心数据结构是什么?如何加载和卸载模块?模块和应用程序运行在哪些空间?Linux中的浮点运算是由应用程序实现的还是内核实现的?模块程序可以使用可链接的库函数吗?TLB中缓存了什么?Linux中有哪些设备?字符设备驱动程序的关键数据结构是什么?设备驱动程序中包含哪些功能?如何唯一标识一个Devices?Linux是如何实现系统调用的?Linux软中断和工作队列的作用是什么?