У меня есть сомнения относительно роли операционной системы в отношении времени жизни процесса прямо сейчас.Я использую Linux.
Предположим, у меня есть приложение, которое создает набор объектов в куче, используя new
.В течение жизненного цикла приложения мне не нужно удалять какие-либо из этих объектов, кроме как при выходе из приложения или в исключении перед выходом для выполнения очистки.
Предположим, я не вызываю delete вконец приложения для всех этих объектов, обычно ОС освобождает / освобождает всю выделенную кучу, чтобы сделать ее доступной снова при выходе из процесса?Если процесс завершается из-за исключения или вызова return или exit, происходит ли это всегда?
Если это правда, это означает, что если я не вызову delete
, это не повлияет наОС или другие приложения, работающие на машине.Правильно?
Я обычно использую boost shared pointers
или delete
, но я бы хотел прояснить это сомнение в контексте OS / Linux
С уважением AFG