Вчимося звільняти займану програмою пам'ять на delphi

тільки корисні матеріали

Головний акціонер Alibaba став найбагатшою людиною в Китаї
статті

Microsoft почала закрите тестування Office 16
статті

Фахівці знайшли діри в безпеці Windows 8.1
статті

У московському метро з'явиться єдина мобільна мережа
статті

eBay буде приймати Bitcoin
статті

Vivitek представила «шкільний» проектор D755WTIR
статті

У Твіттері з'явилася кнопка «Купити»
статті

«Яндекс.Новини» тепер можна переглядати і на iPhone
статті

Приклад, який я зараз хочу вам показати, застосуємо тільки для програм які працюють у фоновому режимі (для інших в цьому просто немає сенсу). Тобто програм, які постійно сидять в пам'яті і не мозоля очі користувачеві займаються своїми справами. Даний delphi исходник підійде при створення троянів, вірусів, планувальника завдань і.т.д. Для таких додатків вкрай важливим є обсяг споживаної пам'яті, і розробник повинен звести його до мінімуму.
Переходимо до коду:

Створюємо простеньку процедуру після виклику якої наша Delphi програма звільнить всю непотрібну їй пам'ять.

uses Windows, SysUtils;

procedure TrimWorkingSet;
var
MainHandle: THandle;
begin
if Win32Platform = VER_PLATFORM_WIN32_NT then
begin
MainHandle: = OpenProcess (PROCESS_ALL_ACCESS, false, GetCurrentProcessID);
SetProcessWorkingSetSize (MainHandle, DWORD (-1), DWORD (-1));
CloseHandle (MainHandle);
end;
end;

Користуйтеся на здоров'я!

Code courtesy of Roy Nelson ([email protected]), Inprise European Professional Support
From Delphi Magazine article "Slimming the fat off your Apps" by Hallvard Vassbotn, [email protected]

Схожі матеріали

Схожі статті