آیا باید InputStream را در جاوا ببندیم؟
آیا باید InputStream را در جاوا ببندیم؟

تصویری: آیا باید InputStream را در جاوا ببندیم؟

تصویری: آیا باید InputStream را در جاوا ببندیم؟
تصویری: ورودی/خروجی فایل جاوا - آسان‌تر از آن چیزی است که فکر می‌کنید 2024, ممکن است
Anonim

2 پاسخ. شما نیاز به بستن را جریان ورودی ، زیرا جریان برگشتی با روشی که ذکر کردید در واقع FileInputStream یا زیر کلاس دیگری است جریان ورودی که یک دسته برای یک فایل نگه می دارد. اگر شما انجام دادن نه بستن این جریان شما دارند نشت منابع

با در نظر گرفتن این موضوع، آیا بستن InputStream در جاوا ضروری است؟

اما جریان ورودی s هرگز بسته نمی شود. این یک مستقل است جاوا برنامه ها و چندین برنامه از این قبیل وجود دارد که در آنها جریان ورودی هرگز بسته نمی شود به طور معمول فایل زمانی بسته می شود که جریان ورودی شی زباله جمع آوری می شود یا زمانی که برنامه به پایان می رسد. معمولاً این ایده خوبی نیست که مسائل را به این شکل باز بگذارید.

همچنین، چرا باید استریم ها را در جاوا ببندیم؟ مهم است که نهرها را ببند ، برای انتشار توصیفگر فایل که توسط این کلاس نگهداری می شود، به عنوان منبع محدود آن و هم در اتصال سوکت و هم در مدیریت فایل استفاده می شود. یک نشت جدی منبع ممکن است منجر به استثنای توصیفگر فایل نیز شود.

دوم اینکه آیا باید FileInputStream را ببندم؟

بله تو نیاز به بستن جریان ورودی اگر شما خواستن منابع سیستم شما بازگردانده شد. FileInputStream . بستن () همان چیزی است که شما نیاز . شما هم همینطور نیاز به بستن ()، یا برنامه خود را تمام کنید.

آیا باید ByteArrayInputStream را ببندم؟

4 پاسخ. شما مجبور نیستید ByteArrayInputStream را ببندید ، در لحظه ای که توسط هیچ متغیری به آن ارجاع داده نمی شود، زباله جمع کننده جریان و برخی بایت ها را آزاد می کند (البته با فرض اینکه در جای دیگری ارجاع داده نشده باشند).

توصیه شده: