por Marcos Elias
Em alguns posts anteriores coloquei uma dica aqui no Explorando que
"forçava" o Windows a descarregar todas as DLLs não mais usadas da
memória. Porém eu vi em algumas fontes diferentes, uma dizia que era
um valor em determinada chave do registro, a outra dizia que era uma
chave com o valor padrão… Bem, o correto é uma chavev com o valor
padrão. Vá em:
HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > Explorer
e crie uma nova chave ("chave", não valor), de nome "AlwaysUnloadDLL".
Coloque o valor padrão dessa chave para 1. Reinicie o Windows e
pronto…
Com essa configuração o Windows descarrega da memória as DLLs usadas
pelos programas já fechados, liberando a memória. Por padrão essa
opção vem desativada, o que faz com que o Windows libere a memória
apenas quando necessário, o que pode resultar numa lentidão maior ao
abrir programas pesados "que você ainda não tenha aberto", em sessões
longas do Windows (por exemplo, no final da tarde, num computador que
fique ligado o dia inteiro).
Corrigindo então, é a chave "AlwaysUnloadDLL", e não o valor. Se você
não entendeu o nome, "AlwaysUnloadDLL" = "SempreDescarregarDLL".
Você já deve ter percebido que ele mantém as DLLs em cache, por
exemplo: você abre o Macromedia Fireworks (ou um programa qualquer,
meio "pesado"), na primeira vez ele demora um pouco… E depois de
fechá-lo, se você abri-lo de novo na mesma sessão, ele abrirá mais
rápido :)
Geralmente essa opção "AlwaysUnloadDLL" não reduz o desempenho, mas se
você abre e fecha constantemente "os mesmos programas pesados na mesma
sessão", pode preferir deixá-la.















1 comentário até agora ↓
1 MARCOS // jan 12, 2008 at 15:05
boa dica. parabens !
Deixe seu comentário