نقل قول:
مي تونيد به من بگين شما بر چه اساسي مي گين وقتي حتي شئ رو Destroy مي كنيد، حافظه اي خالي نميشه؟ مي خوام ببينم شما مطمئنيد كه حافظه خالي نميشه؟
من این قضیه رو توی TaskManager چک می کنم، و می بینم تا وقتی که کل برنامه بسته نشه و خود سیستم عامل منابع داده شده رو پس نگیره، خالی نمی شن.
نقل قول:
هر فايل چقدر فضا از كامپيوتر شما مي گيره. دقيقاً ذكر كنيد كه بعد از فراخواني چند مگابايت فايل، چند مگابايت از فضاي Ram شما پر ميشه؟
بستگی به فایلی که باز می کنه داره، مقدار ثابتی نیستش.
نقل قول:
كل فضاي Ram شما چقدر هست؟
4 گیگ رم رو دستگاه منه.
نقل قول:
براي امتحان بياين و كل فرمتون كه توي اون، كامپوننتي كه فايلها رو لود مي كنه، رو Destroy كنيد. ببينيد فضايي خالي ميشه يا نه. شايد اين كامپوننت وابسته به Parent خودش باشه.
این کار رو هم کردم ولی جواب نگرفتم، تو زمان اجرا یه فرم ساختم، کامپ.ننت رو هم توش ساختم، فایل رو باز کردم، فایل رو بستم، کامپوننت و فرم رو آزاد کردم ولی مشکل باز هم تا موقع خروج کامل برنامه وجود داشت.
نقل قول:
مخصوصا مورد 2 و 3. همچنین اگر تونستید ابزار MemProof رو تهیه کنید. برای مشاهده ی پردازش ها مفید هست
این ابزار و چند تا ابزار مشابه رو تهیه کردم، واقعا چیزهای خوبی بودن، ولی تو این مشکل به من کمک خاصی نکردند
نقل قول:
اگر سورس دارید باید متد های destructor رو ببینید و کنترل کنید که آیا به درستی عمل میکنند یا خیر.
نه سورسش رو ندارم.
در ضمن من حتی StackSize رو هم تا جای ممکن افزایش دادم که منابع بیشتری از سیستم عامل درخواست کنه.