# Native Code > برنامه نویسی در Delphi > محیط توسعه (IDE) دلفی > سوال: تخصیص حافظه در پروژه های دلفی

## rkhabbazi

سلام :خجالت: 
اگر وقت کردید حتما این سوال منو بخونید و جواب بدهید. :گیج: 
اگر دقت کرده باشید، هنگامی که یک پروژه دلفی نوشتید و آنرا اجرا کنید، یک پروسه بنام پروژه شما در لیست پروسه های موجود در پنجره TaskManager اضاافه میشه. اگر پروژه شما بیشتر از یک فرم داشته باشه و فرم های غیر از فرم اصلی را با دستور application.createform و در زمان اجرا، ایجاد کنید، مقدار حافظه ای که پروسه ی پروژه شما میگیره، افزایش پیدا می کنه :اشتباه: . این مقدار رو در سربرگ Processes در پنجره TaskManager می توانید ببینید. حالا مشکل اینجاست که اگر فرم های ایجاد شده در هنگام اجرا را اگر با دستور Close ببندید و به فرم اصلی پروژه برگردید، مقدار حافظه ای را که برای ایجاد فرم های فرعی گرفته بود را آزاد نمی کند. حالا اگر فرم های غیر اصلی را چند بار با دستور application.createform ایجاد و با دستور Close ببندید، مقدار حافظه تخصیصی برای هر بار ایجاد فرم گرفته شده، آزاد نمی شود. :ناراحت: 
حالا سوال من اینه که چگونه و یا با چه دستوری باید فرم ها را ایجاد و یا بست تا مقدار حافظه تخصیص داده شده، آزاد شود و در نهایت باعث جلوگیری از اشغال بیش از حد حافظه در پروژه های سنگین شود؟ :متفکر: 
ممنون از همه کسانی که وقت می گذارند و جواب یا نظر می دهند. :تشویق:

----------


## Felony

سوالتون مربوط به بخش مباحث عمومی هست نه IDE دلفی .

مدیریت این نوع موارد با خود دلفی هست ، اگر میخواین با بسته شدن فرم حافظه تخصیص یافته به اون آزاد بشه تو رویداد onClose فرم مورد نظر پارامتر Action رو با caFree مقدار دهی کنید :

Action:= caFree;

----------

