面试
文章平均质量分 86
egekm_sefg
这个作者很懒,什么都没留下…
展开
-
Spring Boot面试题汇总,含答案
用来简化spring应用的初始搭建以及开发过程 使用特定的方式来进行配置(properties或yml文件)创建独立的spring引用程序 main方法运行嵌入的Tomcat 无需部署war文件简化maven配置自动配置spring添加对应功能starter自动化配置答:spring boot来简化spring应用开发,约定大于配置,去繁从简,just run就能创建一个独立的,产品级别的应用。原创 2023-10-26 13:47:05 · 186 阅读 · 0 评论 -
JVM常用启动参数
将新对象预留在新生代,由于 Full GC 的成本远高于 Minor GC,因此尽可能将对象分配在新生代是明智的做法,实际项目中根据 GC 日志分析新生代空间大小分配是否合理,适当通过“-Xmn”命令调节新生代大小,最大限度降低新对象直接进入老年代的情况。开头为非标准参数,基本都传给JVM,默认 JVM 实现这些参数的功能,但是并不保证所 有 JVM 实现都满足,且不保证向后兼容。开头的为非稳定参数,专门用于控制JVM的行为,跟具体的JVM实现有关,随时可能在下一个版本中取消。在堆内存所占的比例。原创 2023-10-26 12:54:57 · 74 阅读 · 0 评论 -
Linux下C++多线程编程(入门实例)
当创建一个线程时,它的某个属性会定义它是否是可连接的(joinable)或可分离的(detached)。以下简单的实例代码使用 pthread_create() 函数创建了 5 个线程,并接收传入的参数。” 消息,并输出接收的参数,然后调用 pthread_exit() 终止线程。如果 main() 是在它所创建的线程之前结束,并通过 pthread_exit() 退出,那么其他线程将继续执行。这样的程序中的每个部分称为一个线程,每个线程定义了一个单独的执行路径。创建一个新的线程,并让它可执行。原创 2023-10-26 12:15:42 · 370 阅读 · 0 评论 -
JVM最大线程数
事先预测在这样的测试环境下,线程数量就只会受限于测试环境的内存大小(3G),可是实际的测试结果是线程数量在达到32K(32768,创建的数量最多的时候大概是33000左右)左右时JVM是抛出警告:Attempt to allocate stack guard pages failed,然后出现OutOfMemoryError无法创建本地线程。由上面的测试结果可以看出增大堆内存(-Xms,-Xmx)会减少可创建的线程数量,增大线程栈内存(-Xss,32位系统中此参数值最小为60K)也会减少可创建的线程数量。原创 2023-10-25 23:51:01 · 496 阅读 · 1 评论 -
JVM常用调优参数 ——JVM篇
通过这些参数可以对JVM的内存分配做调整Xms堆区初始值-Xms2g或Xmx堆区最大值-Xmx2g或Xmn新生代最大值-Xmn512m或PermSize(JDK1.8以后已废弃)永久代初始大小(JDK1.8以后已废弃)永久代最大值(JDK1.8以后用于替换PermSize)元数据区初始大小(JDK1.8以后用于替换MaxPermSize)元数据区最大值Xss线程栈最大值-Xss256k或最大直接内存(堆外)大小。原创 2023-10-25 23:29:34 · 324 阅读 · 1 评论 -
2020年大厂Java面试前复习的正确姿势(800+面试题答案解析)
上面的这些面试题都整理成了PDF文档,希望能帮助到你面试前的复习且找到一个好的工作,也节省你在网上搜索资料的时间来学习!欢迎关注我的公众号:程序员追风 ,回复 888 领取这份整理好的Java面试题资料!原创 2023-10-07 15:07:48 · 45 阅读 · 1 评论 -
13.分布式锁面试题(高频面试题)
如果有一把锁,被多个人给竞争,此时多个人会排队,第一个拿到锁的人会执行,然后释放锁,后面的每个人都会去监听排在自己前面的那个人创建的node上,一旦某个人释放了锁,排在自己后面的人就会被zookeeper给通知,一旦被通知了之后,就ok了,自己就获取到了锁,就可以执行代码了。例如你的锁自动失效时间为10秒,则超时时间应该在5-50毫秒之间。zk创建的是临时节点,客户端获取到锁执行业务,执行到一半突然挂掉(Session连接断开),那么这个临时节点就会自动删除掉,其他客户端自动获取锁,不会存在死锁问题。原创 2023-10-07 14:49:26 · 76 阅读 · 1 评论