很早就想写一些shell相关得东西了,平时会用到比较多的shell相关的东西,但是一般都去百度或者google去了,一直觉得不够系统,因此就从日常杂记开始,把日常用到的一些脚...
几句闲扯:首先,我想说java的线程池真的是很绕,以前一直都感觉新建几个线程一直不退出到底是怎么实现的,也就有了后来学习ThreadPoolExecutor源码。学习源码的过...
如果设置了keepAliveTime>0,那非核心线程会在空闲状态下等待keepAliveTime之后销毁,直到最终的线程数量等于corePoolSize,我看到了这个说明,但是没找到是哪里实现的啊,大神能指导下吗?
深入理解java线程池—ThreadPoolExecutor几句闲扯:首先,我想说java的线程池真的是很绕,以前一直都感觉新建几个线程一直不退出到底是怎么实现的,也就有了后来学习ThreadPoolExecutor源码。学习源码的过...
1 策略模式:定义一系列算法的方法,所有的算法功能相同但是实现不同。 示例类图: 如上类图所示:鸭子有两个可能的行为--飞行(FlyBehavior)和呱呱叫(Quack...
查看GC日志时需要用到的虚拟机参数: -XX:+PrintGC 输出GC日志-XX:+PrintGCDetails 输出GC的详细日志-XX:+PrintGCTimeSta...
DirectMemory可以通过-XX:MaxDirectMemorySize指定,如果不指定,默认与Java堆的最大值(-Xmx指定)一样。NIO会使用到直接内存,你可以通...
1、运行时常量池是方法区的一部分,方法区用于存放class的相关信息,如类名、访问修饰符、常量池、字段描述、方法描述等。对于这个区域的测试,基本思路是运行时产生大量的类去填满...
计算机中每个操作系统给每个进程的内存是有限制的(windows64位系统中最大分配内存是2G),即对于虚拟机,最大内存是2G,不算虚拟机进程启动时所占用的内存,剩下的内存分配...
堆内存溢出:堆内存溢出:java堆内存不够,一个原因是真不够,另一个原因是程序中有死循环;下面演示的是利用循环的方式在堆中持续建立对象,直到堆内存满溢。代码:public c...
1、在tigase官网中下载压缩包,下载地址:https://tigase.tech/attachments/5927/tigase-server-7.1.2-b4471-d...
1、类的加载、连接和初始化 加载:查找并加载类的二进制数据(字节码文件) 连接: 验证:确保被加载的类的正确性(手工生成class文件,可 ...
1、运行日志 1.1 JDK的命令行工具 JDK为我们提供了许多工具,如下图所示: JDK提供的这些工具大小都很小,基本都在27KB左...