PDA

View Full Version : memory leak چیه ؟



hamrd.jolgeh
دوشنبه 05 تیر 1391, 20:21 عصر
سلام

برنامه من پس از مدتی کند و سرعتش کم می شود ؟ memory leak چیه ؟ و چگونه بر طرف می شه ؟

kawaja
دوشنبه 05 تیر 1391, 20:28 عصر
سلام من اطلاعات زیادی ندارم ولی یک مطلب در این باره در سایت http://wwwjnpgroup.ir پیدا کردم . برات آوردم :
"
سیاری از برنامه های کامپیوتری دارای memory leak یا به اصطلاح نشت حافظه هستند . این مشکل بزرگ باعث می شود که برنامه در یک دوره کوتاه با خطاهایی مختلفی روبرو شود و برای رفع این خطا ها باید برنامه مورد نظر را ریستارت کرد . ما این مورد را به دفعات زیاد در سیستم عامل ویندوز مشاهده کرده ایم . بیاییم با ذکر یک مثال مسئله را کاملا روشن کنیم . فکر کنیم برنامه ای نوشتیم که به دفعات با فایل ها کار می کند و در سورس برنامه ، برنامه نویس آماتور فراموش کرده است که جریان خروجی فایل را ببندد . بعد از مدتی که برنامه کار میکند با خطای فایل های زیادی باز است مواجه می شود و برای بر طرف کردن این خطا باید کل برنامه ریستارت شود . این یک نمونه خیلی خیلی کوچک از memory leak بود. ناگفته نماند مبحث نشت حافظه در تمام زبان های برنامه نویسی و برنامه های کاربردی وجود دارد.

حال ما چگونه وقتی که یک برنامه را نوشتیم متوجه بشویم که دراری نشت حافظه است یا نه ؟! . این کار را یک برنامه نویس اماتور نمی تواند انجام بدهد و بهترین کار این است که تحلیگران پروژه های نرم افزاری این کار را انجام بدهند . گروه برنامه نویسی jnp با سابقه چندین ساله نسبت به مبحث نشت حافظه در برنامه های جاوا ، آمادگی خود را برای پیدا کردن و بر طرف کردن memory leak ها از برنامه های شما اعلام میدارد .هم اکنون گروه برنامه نویسی jnp راه حل 40 نشت حافظه را با اتکا به تلاش بسیار زیاد به دست آورده است.با ما تماس بگیریدSupport@jnpgroup.ir
"
بهشون چند بار ایمیل زدم پاسخ دادن . تو هم بزن .

همایون افشاری
سه شنبه 06 تیر 1391, 13:48 عصر
تکنیک هایی برای کم کردن Memory Leak توی جاوا :‌ اینجا (http://java.dzone.com/news/how-fix-memory-leaks-java)
ابزار برای مشاهده منابع مورد استفاده ماشین مجازی جاوا :‌ VisualVM (http://barnamenevis.org/visualvm.java.net)