memory leaks when program is closed with x

2019-02-28 00:49发布

问题:

Might be a stupid question, but if I create a console-application that dynamicly creates object and such, I make sure to free the memmory at shutdown. What happens if a user closes the application with the "x" button on the window? will there be memoryleaks and if so, how do i prevent it?

回答1:

No, there won't be any memory leaks.

When a user closes your application the process in which your appication runs gets terminated.Once a process gets terminated, the Operating System(OS) simply reclaims all the memory it had allocated to the process.

Note that for an OS there is no importance whether memory was leaked by the application or not it is simply reclaiming what it allocated to the process.



回答2:

The application will simply be killed. In this case, memory leaks don't really happen since the OS do the cleanup for you.



回答3:

Unless you have an embedded (or buggy) O/S you don't need to do anything.

If you do have an embedded (or buggy) O/S, you need to rigorously keep track of all your memory allocations and ensure there's a corresponding free. For a buggy O/S, you should additionally complain to the provider of said O/S