DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
voltar

PARA QUEM GOSTA DE DELPHI

Comando para limpar a memória residual em Delphi.

Este é um procedimento interessante que interage com a API do Windows
para liberar a memória do aplicativo. Esta funcionalidade é fantástica.

É necessário estar declarado Windows e Forms na seção uses,
em versões unicode declare Winapi.Windows e Vcl.Forms.

Segue o código fonte do comando:

1
2
3
4
5
6
7
8
9
10
11
12
procedure TrimAppMemorySize;
var
  MainHandle: THandle;
begin
  try
    MainHandle := OpenProcess(PROCESS_ALL_ACCESS, false, GetCurrentProcessID);
    SetProcessWorkingSetSize(MainHandle, $FFFFFFFF, $FFFFFFFF);
    CloseHandle(MainHandle);
  except
  end;
  Application.ProcessMessages;
end;

Exemplo de uso:

1
2
3
4
procedure TForm1.Button1Click(Sender: TObject);
begin
  TrimAppMemorySize;
end;

Como já dito, este procedimento localiza o processo da aplicação, e limpa
toda memória residual.

Caso sua aplicação for um Serviço, dll ou algo parecido basta remover a
instrução Application.ProcessMessages;

Fonte: www.agnaldocarmo.com.br/home/comando-milagroso-para-reducao-de-memoria-delphi/

Facebook Comments Box
  • InfusTec
  • 27.153 views
  • 0 comentários
  • 18 de abril de 2015

Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!

Deixe um comentário

Ir ao topo

© 2024 Infus Soluções em Tecnologia - Todos os Direitos Reservados