内存泄漏:程序申请内存后,没有释放该内存。
栈内存:一般是局部变量和参数,它的释放由编译器控制。
堆内存:由new 申请的内存,它的释放由程序员控制,但程序结束时,操作系统会自动释放它。也就是说在子函数中,new申请的堆内存在函数结束时候的,不会被释放(因为程序并没有结束)。一次memory leak不会引起什么大问题,但是memory leak的大量累积会造成严重的内存不足。
以上是个人的理解,如果有错误和不足希望大佬指出。
内存泄漏:程序申请内存后,没有释放该内存。
栈内存:一般是局部变量和参数,它的释放由编译器控制。
堆内存:由new 申请的内存,它的释放由程序员控制,但程序结束时,操作系统会自动释放它。也就是说在子函数中,new申请的堆内存在函数结束时候的,不会被释放(因为程序并没有结束)。一次memory leak不会引起什么大问题,但是memory leak的大量累积会造成严重的内存不足。
以上是个人的理解,如果有错误和不足希望大佬指出。