06 2022 档案

摘要:线程的状态 Java:线程的六种状态及转化 - 你的雷哥 - 博客园 (cnblogs.com) 通过threadpoolexcetor来创建这些任务。 阅读全文
posted @ 2022-06-23 18:16 你的雷哥 阅读(12) 评论(0) 推荐(0) 编辑
摘要:1.JDK动态代理是实现了被代理对象的接口,Cglib是继承了被代理对象。2.JDK和Cglib都是在运行期生成字节码,JDK是直接写Class字节码,Cglib使用ASM框架写Class字节码,Cglib代理实现更复杂,生成代理类比JDK效率低。3.JDK调用代理方法,是通过反射机制调用,Cgli 阅读全文
posted @ 2022-06-22 23:58 你的雷哥 阅读(177) 评论(0) 推荐(0) 编辑
摘要:G1垃圾收集器深入剖析 – mikechen的互联网架构 serial是串行的,parrnew是并行的,采用复制算法,会stop the world, parrellel scavengr则是在乎吞吐率,也就是可以让单次gc时间长,但是总体时间不长,。 老年代,老年代的单次执行时间比较长,所以cms 阅读全文
posted @ 2022-06-22 23:50 你的雷哥 阅读(24) 评论(0) 推荐(0) 编辑
摘要:mysql> select @@optimizer_switch\G;*************************** 1\. row: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_inte 阅读全文
posted @ 2022-06-22 19:31 你的雷哥 阅读(184) 评论(0) 推荐(0) 编辑
摘要:区别:1. InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务; 2. InnoDB支持外键,而MyISAM不支持。对一个包含外键的InnoDB表转为MYISAM 阅读全文
posted @ 2022-06-22 17:11 你的雷哥 阅读(43) 评论(0) 推荐(0) 编辑
摘要:进程间的通信方式,其实我们一直在用它,但是我们都不会去注意它。如果碰到面试官问你知道多少种进程间的通信方式,估计很多人都会有点懵。今天我们就来总结下进程间的通信方式有哪些。 管道 管道,英文为pipe。这是一个我们在学习Linux命令行的时候就会引入的一个很重要的概念。它的发明人是道格拉斯.麦克罗伊 阅读全文
posted @ 2022-06-22 17:04 你的雷哥 阅读(324) 评论(0) 推荐(0) 编辑
摘要:Java中的ThreadLocal通常是在什么情况下使用的? - 苏三说技术的回答 - 知乎 https://www.zhihu.com/question/21709953/answer/2488516865 阅读全文
posted @ 2022-06-21 19:50 你的雷哥 阅读(55) 评论(0) 推荐(0) 编辑
摘要:前言 在面试环节中,考察"ThreadLocal"也是面试官的家常便饭,所以对它理解透彻,是非常有必要的. 有些面试官会开门见山的提问: “知道ThreadLocal吗?” “讲讲你对ThreadLocal的理解” 当然了,也有面试官会慢慢引导到这个话题上,比如提问“在多线程环境下,如何防止自己的变 阅读全文
posted @ 2022-06-21 17:59 你的雷哥 阅读(2979) 评论(0) 推荐(0) 编辑
摘要:线程之间为什么要进行通信线程是操作系统调度的最小单位,有自己的栈(JVM中的虚拟机stack)空间,可以按照既定的代码逐步的执行,但是如果每个线程间都孤立的运行,那就会造资源浪费。所以在现实中,我们需要这些线程间可以按照指定的规则共同完成一件任务,所以这些线程之间就需要互相协调,这个过程被称为线程的 阅读全文
posted @ 2022-06-19 20:29 你的雷哥 阅读(95) 评论(0) 推荐(0) 编辑
摘要:(8条消息) CMS与三色标记算法_程序员小潘的博客-CSDN博客_cms三色标记法 CMS(Concurrent Mark Sweep)是一款里程碑式的垃圾收集器,为什么这么说呢?因为在它之前,GC线程和用户线程是无法同时工作的,即使是Parallel Scavenge,也不过是GC时开启多个线程 阅读全文
posted @ 2022-06-19 17:43 你的雷哥 阅读(709) 评论(0) 推荐(0) 编辑
摘要:关于线程的生命周期,网上书上说法不一,难以统一,本篇做一个总结:java.lang.Thread.State 枚举类中定义了六种线程的状态,可以调用线程Thread中的getState()方法获取当前线程的状态。 下图源自《Java并发编程艺术》图4-1 一、新建状态(NEW) 即用new关键字新建 阅读全文
posted @ 2022-06-17 18:39 你的雷哥 阅读(176) 评论(0) 推荐(0) 编辑
摘要:一、垃圾回收算法1、标记复制算法会把内存分为相同的2个部分,每次回收,会把存活的对象移动到另一边,回收当前使用的空间。分配的内存被分成2份,实际使用空间变成正常的一半。但是不会出现垃圾碎片。 2、标记清除算法标记存活的对象,把未标记的回收。回收后内存不是连续的,会产生大量的不连续的碎片,标记对象的时 阅读全文
posted @ 2022-06-15 18:15 你的雷哥 阅读(174) 评论(0) 推荐(0) 编辑
摘要:我们最初学习Java的时候,遇到多线程我们会知道synchronized,对于当时的我们来说synchronized是保证了多线程之间的同步,也成为了我们解决多线程情况的常用手段。但是,随着我们学习的进行我们知道synchronized是一个重量级锁,相对于Lock,它会显得那么笨重,以至于我们认为 阅读全文
posted @ 2022-06-15 17:41 你的雷哥 阅读(127) 评论(0) 推荐(0) 编辑
摘要:堆排序实现方式,前面一种时间复杂度为N^2,暴力堆排序,下面一种是nlogn,需要记忆的一种。 public void heapSort(int Array[]) { int times = Array.length - 1; while (true) { for (int i = times; i 阅读全文
posted @ 2022-06-03 18:11 你的雷哥 阅读(41) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示