Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 31.05.2013, 16:43
Pcrepair
 
Сообщения: n/a
По умолчанию TGauge и утечка памяти

Добрый день. Есть вроде бы стандартный код для отображения загрузки процессора на основе adCpuUsage

Код:
uses Gauges; (*в оригинале сам компонент на форму не ставится*)
.....

implementation
{$R *.dfm}
uses adCpuUsage;

procedure TForm2.FormCreate(Sender: TObject);
var
I:integer;
Gauge: TGauge;
begin
 for i:=1 to GetCPUCount-1 do
   begin
     try
       Gauge:=TGauge.Create(Form2);
       Gauge.Name:=Format('Gauge%d',[i]);
         with TGauge(FindComponent(Format('Gauge%d',[i]))) do
           begin
             Parent:=StatusBar;
             Top:=2;
             Width:=100;
             Height:=18;
             Left:=((i-1)*Width);
             MinValue:=0;
             MaxValue:=100;
             ForeColor:=clGreen;
           end;        
     except
       //
     end;
   end;
end;

procedure TForm2.Timer2Timer(Sender: TObject);
var
n:Integer;
CPU   : Integer;
begin
    CollectCPUData;
    for n:=1 to GetCPUCount-1 do
      begin
        TGauge(FindComponent('Gauge'+IntToStr(n))).Progress:=StrToInt(Format('%0.0f%',[GetCPUUsage(n)*100]));
        CPU:=StrToInt(Format('%0.0f%',[GetCPUUsage(n)*100]));
      end;
end;

и все вроде бы работает, но если добавить

Код:
initialization
ReportMemoryLeaksOnShutdown := true;
end.

то становится видна утечка памяти при закрытии формы. видимо дело в Gauge:=TGauge.Create(Form2); и в отсутствии соотвественно деструктора
Вопрос: как правильно при закрытии приложения уничтожить компонент, чтоб не было утечки памяти?
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 07:55.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025