- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 【面试】你了解哪些收集器?CMS和G1。详细谈谈G1的优点?什么时候进行Full GC呢?
收集器面向局部收集的设计思路和基于Region的内存布局形式。是一款面向服务端应用的垃圾收集器。在延迟可控的情况下获得尽可能高的吞吐量,所以才会担当起“全功能收集器”的重任与期望。
2023-06-28 19:17:57 517 1
原创 【面试】锁的概念,锁相关的关键字,Lock与synchronized区别
当锁对象第一次被线程请求时,JVM会记录锁对象的标志为偏向,并将这个线程的Thread ID记录在对象头的Mark Word中,以后,当这个线程再次请求锁时,只需要检查一下对象头中的Thread ID是否与当前线程ID一致即可获得锁,无需再去争用锁。这种锁的优点是效率高,缺点是需要处理数据一致性的问题。在并发编程中,经常会遇到多个线程访问同一个共享资源,这时候我们要保证数据的一致性,那么就要用到了锁的概念,给资源加上锁,拿到锁所有权的人才能够进行操作共享资源,没有拿到锁的线程需要等待,等锁的所有权放开。
2023-06-28 12:58:01 88 1
原创 【面试】Spring怎么解决循环依赖
单例(全局唯一):构造注入【检测是否存在避免栈溢出】、设值注入【三级缓存-提前暴露】原型:构造注入【检测是否存在避免栈溢出】、设值注入【不支持循环依赖】
2023-06-28 12:43:06 65 1
原创 【面试】Java多线程JUC包下的一些常见的类,比如CountDownLatch、Semaphore
当某个线程调用await方法时,该线程进入等待状态,且计数器加1,当计数器的值达到设置的初始值时,所有因调用await进入等待状态的线程被唤醒,继续执行后续操作。它也被更多地用来限制流量,类似阀门的功能。CyclicBarrier主要是实现了多个线程之间相互等待,直到所有的线程都满足了条件之后各自才能继续执行后续的操作,描述的多个线程内部相互等待的关系。CountDownLatch是一个计数器闭锁,通过它可以完成类似于阻塞当前线程的功能,即:一个线程或多个线程一直等待,直到其他线程执行的操作完成。
2023-06-28 12:42:48 73 1
wordpress4.9 linux
2018-05-07
tomcat6 web服务器
2018-05-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人