这让我感到惊讶,我正在玩

Java Unsafe.基本上我正在测试的是

Allocate unsafe memory -> free the memory -> Write to the freed memory

当我访问被释放的内存时,我期待看到某种分段错误错误,但令人惊讶的是,没有引发错误/异常.

我的代码是:

protected static final Unsafe UNSAFE;

static {

try {

Field field = Unsafe.class.getDeclaredField("theUnsafe");

field.setAccessible(true);

UNSAFE = (Unsafe) field.get(null);

} catch (Exception e) {

throw new RuntimeException(e);

}

}

@Test

public void test() {

long ptr = UNSAFE.allocateMemory(1000);

UNSAFE.freeMemory(ptr);

UNSAFE.putOrderedLong(null, ptr, 100L);

}

我的问题是,如果是这样,为什么我们需要在Unsafe中使用freeMemory()函数?真的是什么?

java 堆内存不释放_Java可以写入/读取已释放的堆内存吗?相关推荐

  1. java删除word中批注_Java 添加、读取和删除 Excel 批注的操作代码

    批注是一种富文本注释,常用于为指定的Excel单元格添加提示或附加信息. Free Spire.XLS for Java为开发人员免费提供了在Java应用程序中对Excel文件添加和操作批注的功能. ...

  2. java nio 追加写文件_Java NIO写入文件

    用NIO写文件,总结一下,主要有如下步骤: 1.打开通道. 2.包装到缓冲区. 3.写入文件. 4.不忘记关闭通道,关闭流.package what21.nio; import java.io.Fil ...

  3. java算球体积的代码_java - 球体体积法不起作用 - 堆栈内存溢出

    为了使球体体积法起作用,我尝试了许多不同的计算方法. 我的Sphere类是从Circle扩展的,以从圆中获取面积,并实现了Shape3D接口,该接口允许我使用体积方法. 但是,我已经为我的方法尝试了所 ...

  4. Java第一次读文件慢_Java 关于文件读取速度问题,求助,谢谢啦

    展开全部 /** * ip条目实体类 */ public class IpEntry { String country, province, city, region, local; long sta ...

  5. java 图片分段上传_java实现分段读取文件并通过HTTP上传的方法

    本文实例讲述了java实现分段读取文件并通过HTTP上传的方法.分享给大家供大家参考.具体如下: 1.首先将文件分段,用RandomAccessFile 2.分段后将分出的内容上传到http URL ...

  6. java 遍历属性文件路径_Java项目中读取properties文件,以及六种获取路径的方法...

    Java读取properties文件的方法比较多,网上最多的文章是"Java读取properties文件的六种方法",但在Java应用中,最常用还是通过java.lang.Clas ...

  7. java hbase 批量查询数据_java Hbase 批量读取

    Hbase 一般使用传一个rowkey读取一个数据的方式进行数据的读取,然后将多个rowkey写成一个循环,这样性能不好.可以传一批rowkey然后,一块获取返回数据的方式进行查询. java 版本: ...

  8. java调用扫描仪识别文字_Java使用扫描仪读取文件输入

    示例 Scanner scanner = null; try { scanner = new Scanner(new File("Names.txt")); while (scan ...

  9. java获取内容为空_Java使用POI读取Word文档时如果文档内容为空时出现异常

    异常如下: org.apache.poi.EmptyFileException: The supplied file was empty (zero bytes long) at org.apache ...

最新文章

  1. tp5.0 queue 队列操作
  2. Google团队发布,一文概览Transformer模型的17大高效变种
  3. android EnMicroMsg.db安卓微信数据库获得密码的源码
  4. 好久不用的viewport
  5. boost::range模块sliced相关的测试程序
  6. MySQL之索引优化
  7. 应用架构设计“着火”“防火”经验之谈
  8. bzoj3551 [ONTAK2010]Peaks加强版(Kruskal重构树+主席树)
  9. 大学使用python 编辑器_Python数据分析|最多人用的代码编辑器推荐
  10. 【有利可图网】PS实战教程28:巧用调整边缘滤镜抠毛发
  11. C语言实现简单的电子通讯录
  12. Amigo---Android hotfix terminator
  13. 玩客云设置linux权限,玩客云退出链克怎么禁止硬盘缓存?.onething_data文件禁止缓存玩客云关闭上传退出链克...
  14. 译:Convolutional Two-Stream Network Fusion for Video Action Recognition
  15. 计算机实训项目一操作系统和网络应用,计算机网络实训心得
  16. (第二章)OpGL超级宝典学习:创建我们第一个OpenGL程序,绘制一个点和三角形
  17. Oracle-高效分页
  18. 软件架构-Nosql之redis
  19. 计算机动漫设计需要学什么,计算机动画制作专业好学吗?都有哪些课程?
  20. 软件质量之道:SourceMonitor

热门文章

  1. 无任何网络提供程序接受指定的网络路径 or No network provider accepted the given network path 的解决方法...
  2. Buck-Boost变换
  3. MFC的Main函数跑哪去了
  4. 上传失败 已保存至草稿_特大福利 清睿口语100成都会议专家讲座视频已上传至口语100网站...
  5. 查询排序_Mysql在排序和查询时不使用索引的情况
  6. 局域网内抢网速_路由器要不要每天重启?多亏宽带师傅透露,难怪网速一天比一天慢...
  7. 湖南大学C语言作业用oj吗,湖南大学C语言题库(含答案)
  8. 彼聆智能语音机器人_人工智能2.0时代,创造他们的究竟是谁?
  9. python中运算的英文_[lemon]Python中的运算符,LemonPython
  10. java 优化 寄存器_JVM性能优化系列-(6) 晚期编译优化