আমি প্রচুর জালিয়াতির জাভা প্রশ্নগুলি পড়েছি এবং এ জাতীয় বিড়বিড়তা finalize()
খুঁজে পেয়েছি যে কেউ সত্যিই এটি পরিষ্কার করে দেয় নি যে চূড়ান্তকরণ () সম্পদ পরিষ্কার করার একটি অবিশ্বাস্য উপায়। আমি কারও মন্তব্য দেখেছি যে তারা এটি সংযোগগুলি পরিষ্কার করার জন্য ব্যবহার করে, যা কোনও সংযোগ বন্ধ রয়েছে এমন গ্যারান্টিটির কাছে আসার একমাত্র উপায় অবশেষে চেষ্টা (ধরা) বাস্তবায়ন করা since
আমাকে সিএসে স্কুলে চালানো হয়নি, তবে আমি জাভাতে প্রায় এক দশক ধরে পেশাদারভাবে প্রোগ্রামিং করছি এবং কখনও কখনও finalize()
প্রযোজনা ব্যবস্থায় কাউকে বাস্তবায়ন করতে দেখিনি । এর এখনও এর অর্থ এই নয় যে এর ব্যবহারগুলি নেই বা আমি যাদের সাথে কাজ করেছি তারা এটি সঠিকভাবে করছে।
সুতরাং আমার প্রশ্নটি হ'ল, প্রয়োগের জন্য এমন কোন ব্যবহারের কেস রয়েছে finalize()
যা ভাষার মধ্যে অন্য প্রক্রিয়া বা সিনট্যাক্সের মাধ্যমে আরও নির্ভরযোগ্যভাবে পরিচালনা করা যায় না?
দয়া করে নির্দিষ্ট পরিস্থিতি বা আপনার অভিজ্ঞতা সরবরাহ করুন, কেবল একটি জাভা পাঠ্য বইয়ের পুনরাবৃত্তি করা বা চূড়ান্তকরণের উদ্দেশ্যে ব্যবহার যথেষ্ট নয়, কারণ এই প্রশ্নের উদ্দেশ্য নয়।
finalize()
। যাইহোক, প্ল্যাটফর্ম লাইব্রেরি কোড , যেমন SocketInputStream
, কলারের পক্ষে নেটিভ রিসোর্স পরিচালনা করে, রিসোর্স ফাঁসের ঝুঁকি হ্রাস করার চেষ্টা করে (বা PhantomReference
পরে যুক্ত করা হয়েছে এমন সমতুল্য প্রক্রিয়াগুলি ব্যবহার করে ।) সুতরাং বাস্তুতন্ত্র তাদের প্রয়োজন যদিও 99.9999% বিকাশকারী কখনই একটি লিখবেন না।