摘要:
看上图的样子,程序应当是在堆内存中不断分配空间,不断创造引用,最后导致堆空间不足,进一步产生问题,最终报出OutOfMemoryError。但真实结果却是,报的栈溢出。不知道自己在虚拟机内存这块的理解上是不是有问题。 解释: 题主只考虑到了堆上的问题,以为上面的操作只涉及堆,其实栈也是要的 Java 阅读全文
摘要:
内存泄漏(memory leak ) 内存泄露 :是指程序在申请内存后,无法释放已申请的内存空间就造成了内存泄漏,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。 我们知道了内存泄漏的原因而内存溢出则有可能是因为我们多次内存泄漏堆积后的后果则变成了内存溢出 内存溢出 (out o 阅读全文
摘要:
当调用stop()方法时会发生两件事: 1.即刻停止run()方法中剩余的全部工作,包括在catch或finally语句中,并抛出ThreadDeath异常(通常情况下此异常不需要显示的捕获),因此可能会导致一些清理性的工作的得不到完成,如文件,数据库等的关闭。 2.会立即释放该线程所持有的所有的锁 阅读全文