Как malloc()
/ free()
обычно включает в себя обширные структуры данных, которые существуют в пользовательском пространстве, free()
память, когда ваша программа заканчивается, может фактически снизить производительность. Если части структуры данных выгружаются на диск, их нужно загружать с диска только для удаления!
Принимая во внимание, что если вы прекратите работу без free()
, данные, выгруженные на диск, могут спокойно умереть.
Конечно, free()
использование в другое время обычно выгодно, так как дальнейшие malloc()
s могут повторно использовать освободившееся место, а free()
может даже отобразить некоторую память, которая затем может использоваться другими процессами.