1

Unsafe.java之: 内存分配


1. 分配内存:

分配一个 bytes 个字节的内存空间

public native long allocateMemory(long bytes);

2. 重新指派内存

在内存 address 处重新分配 bytes个字节的内存

public native long reallocateMemory(long address, long bytes);

3. 绕过new构造方法创造对象

直接在内存中构造一个cls类的对象, 但不调用cls类的构造方法;

public native Object allocateInstance(Class<?> cls) throws InstantiationException;

4. 释放分配的内存

处置从allocateMemoryreallocateMemory 获得的内存块。 传递给此方法的 address 可以为null,在这种情况下,不采取任何措施。

public native void freeMemory(long address);


丰木
322 声望19 粉丝

遇见超乎想象的自己!