共 8 篇文章 |
|
深入 java debug 原理及远程remote调试详解原理。JPDA(Java Platform Debugger Architecture)是 sun 公司开发的 java平台调试体系,它主要有三个层次组成,即 Java 虚拟机工具接口(JVMTI),Java 调试线协议(JDWP)以及 Java 调试接口(JDI)import com.sun.jdi.event.import com.sun.jdi.request.3、cmd 切换到此目录下执行 java -cp &quo... 阅1902 转7 评0 公众公开 21-11-17 23:57 |
序列化如何破坏单例模式。/** * Created by hollis on 16/2/5. * 使用双重校验锁方式实现单例 */public class Singleton implements Serializable{ private volatile static Singleton singleton; private Singleton (){} public static Singleton getSingleton() { if (singleton == null) { synchronized (Singleton.class) { if (singleton ... 阅38 转0 评0 公众公开 21-11-09 15:03 |
深入分析Java的序列化与反序列化GitHub 19k Star 的Java工程师成神之路,不来了解一下吗!ArrayList的序列化。在序列化过程中,如果被序列化的类中定义了writeObject 和 readObject 方法,虚拟机会试图调用对象类里的 writeObject 和 readObject 方法,进行用户自定义的序列化和反序列化。用户自定义的 writeObject 和 readObject 方法可以允许... 阅11 转0 评0 公众公开 21-11-09 14:59 |
if (phys_pages == 0) { phys_pages = __sysconf(_SC_PHYS_PAGES);pagesize = __sysconf(_SC_PAGESIZE);这样又会产生一种新的race condition,那就是某个线程中的qsort其pagesize和phys_pages都通过__sysconf()赋值完成了,但是phys_pages /=4;还没有被执行,彼时另外一个线程又在执行qsort,导致它判断pagesize和phys_pages都不等... 阅54 转0 评0 公众公开 21-03-31 11:01 |
编译器,cpu,指令之间没有依赖关系的话,会将指令重新排序。例如:Product p = new Product();这行代码分为以下3个步骤(伪代码)。instance=memory 3.将instance指向memory内存地址,到这一步instance!=null.步骤2和步骤3没有依赖关系,会有指令重排。private static Product product;product = new Product();istore_1.istore_2 给第2个... 阅191 转0 评0 公众公开 20-11-16 14:56 |
Java文件编译与反编译(二):class文件解析。指 接口索引集合(若该类没有实现任何接口,则接口计数器值为0,同时接口索引集合就不占用任何字节) fields_count.00 06指字段和方法的描述符指向常量池中的索引项:6 attributes_count(u2)00 08指方法描述符索引指向常量池中的索引项:8 attributes_count(u2)00 01指属性表集合大小为:1(表示该... 阅100 转0 评0 公众公开 20-11-16 11:38 |
Java文件编译与反编译(一):javac命令和javap命令Java文件编译与反编译(一):javac命令和javap命令。2.使用javac命令编译Test.java文件,得到Test.class文件。Compiled from "Test.java"public class Test { public Test(); 阅41 转0 评0 公众公开 20-11-16 11:37 |