Если malloc () считается причиной «грязной памяти», можно ли free () очистить ее?

Я слышал слухи, что вызов malloc приводит к так называемой "грязной памяти", которую вы можете увидеть в инструменте VM Tracker. .

Ходят слухи, что нужно стараться, чтобы количество грязной памяти было как можно меньше. Но о чем они особо не говорили, так это о том, как снова избавиться от грязи.

Иногда нет другого выхода, кроме использования malloc (). Черт возьми, я люблю malloc (). Например, при создании аудиоисточников для OpenAL необходимо malloc () большого количества данных.

Итак: когда мое приложение вызывает malloc () и free () повсюду, я всегда считал, что это нормально. У меня при этом огромная проблема? Или free () всегда будет «очищать»? Я немного сбит с толку, потому что некоторые очень большие ребята из очень большой компании предупредили, что из-за этой проблемы с грязной памятью следует по возможности избегать malloc ().

Может, кто-нибудь меня в этом не запутает.

0
задан Nicol Bolas 3 December 2011 в 01:24
поделиться