نمایش نتایج 1 تا 4 از 4

نام تاپیک: مشکل dispose کردن

  1. #1

    مشکل dispose کردن

    سلام
    من کد



    using (System.IO.StreamReader file = new System.IO.StreamReader(@"F:\Film\TV\Serial\Mokhtar Nameh\mokhtar name 2.divx"))
    {
    string a = file.ReadToEnd();
    }


    رو که اجرا میکنم (حجم فایلم حدودا 250 مگ هست) ، بعد از اتمام بلاک ، هیچ چی ز منابع و رم آزاد نمیشه و 1 گیگ از رم رو اشغال میکنه با اونکه توی دستور using نوشته و متد dispose رو فراخونی میکنه
    چرا؟
    فقط بعد از بلاک using ، متد GC.Collect() رو فراخونی میکنم ، اشغال رم به حدود 500 مگ کاهش پیدا میکنه ولی به حالت اولیه اش (قبل از خوندن فایل) که 7 مگ رو اشغال میکرد ، نمیرسه
    چی کار باید کنم تا به حالت اولش برگرده؟
    ممنون

  2. #2
    کاربر دائمی آواتار parvizwpf
    تاریخ عضویت
    بهمن 1390
    محل زندگی
    TEH
    پست
    2,919

    نقل قول: مشکل dispose کردن

    شما داری مباحث دات نت رو چک میکنید؟ یا اینکه فایل حجیم در حافظه لود میکنید؟

  3. #3

    نقل قول: مشکل dispose کردن

    نقل قول نوشته شده توسط parvizwpf مشاهده تاپیک
    شما داری مباحث دات نت رو چک میکنید؟ یا اینکه فایل حجیم در حافظه لود میکنید؟

    سلام
    ممنون
    هر دو

  4. #4

    نقل قول: مشکل dispose کردن

    جوابش رو پیدا کردم
    باید متغییر رشته رو قبل از فراخونی متد GC.Collect() ، باید null کنم تا از رم پاک شه :


    using (System.IO.StreamReader file = new System.IO.StreamReader(@"F:\Film\TV\Serial\Istadeh Dar Ghobar\058-istadeh-dar-ghobar-ghesmat-5.mp4"))
    {
    string a = file.ReadToEnd();
    a = null;
    }


    GC.Collect();






    ولی یه سوال .

    مگه وقتی کنترل برنامه به اتمام بلاک در using در بالا برسه ، اتوماتیک متغییر a که تعریف شده ، اشاره گرش از دست نمیره؟

تاپیک های مشابه

  1. پاسخ: 3
    آخرین پست: جمعه 01 خرداد 1394, 17:28 عصر
  2. مشکل Register کردن دلفی نسخه آرشیتکت پس از نصب دلفی 8
    نوشته شده توسط احمد در بخش برنامه نویسی در Delphi Prism
    پاسخ: 3
    آخرین پست: یک شنبه 04 دی 1384, 14:09 عصر
  3. مشکل save کردن صفحات
    نوشته شده توسط مهدی فهمیده غلامی در بخش شبکه و Networking‌
    پاسخ: 5
    آخرین پست: پنج شنبه 20 فروردین 1383, 20:42 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •