মূল পার্থক্য – নিষ্পত্তি () বনাম চূড়ান্ত করা ()
ডিসপোজ () এবং ফাইনালাইজ () এর মধ্যে মূল পার্থক্য হল ডিসপোজ () প্রোগ্রামারকে স্পষ্টভাবে আহ্বান করতে হবে যখন বস্তুটি ধ্বংস করার আগে আবর্জনা সংগ্রাহক দ্বারা চূড়ান্ত করা () আহ্বান করা হয়।
The dispose () হল একটি পদ্ধতি যা অব্যবস্থাপিত সংস্থানগুলিকে বন্ধ বা ছেড়ে দেওয়া হয় যেমন ফাইল, স্ট্রীম একটি বস্তুর দ্বারা ধারণ করে। চূড়ান্ত করা হল অবজেক্টটি ধ্বংস হওয়ার আগে বর্তমান অবজেক্টের দ্বারা ধারণ করা অব্যবস্থাপিত সংস্থানগুলিতে পরিচ্ছন্নতার ক্রিয়াকলাপ সম্পাদন করার একটি পদ্ধতি৷
ডিসপোজ() কি?
এর সবচেয়ে গুরুত্বপূর্ণ সুবিধাগুলির মধ্যে একটি।NET ফ্রেমওয়ার্ক হল এটি স্বয়ংক্রিয় আবর্জনা সংগ্রহের ব্যবস্থা করে। এটি স্বয়ংক্রিয়ভাবে ব্যবহার করা হয় না এমন বস্তুর মেমরি প্রকাশ করে। প্রোগ্রামিং ল্যাঙ্গুয়েজ যেমন সি এবং সি++, প্রোগ্রামারকে নিজের মেমরি ম্যানেজমেন্ট পরিচালনা করতে হয়। কিন্তু C এর মতো ভাষাতে যা. NET ফ্রেমওয়ার্ক গারবেজ কালেক্টর প্রদান করে। এটি মেমরি পরিচালনা করতে সাহায্য করে। এটি অব্যবস্থাপিত মেমরি সম্পদ প্রকাশ করতে ব্যবহার করা যাবে না. ডিসপোজ () পদ্ধতিটি এই কাজটি অর্জন করতে ব্যবহার করা যেতে পারে।
ডিসপোজ () পদ্ধতিটি ডেটাবেস সংযোগ, ফাইল হ্যান্ডলার ইত্যাদি রিলিজ করতে ব্যবহার করা যেতে পারে। এই পদ্ধতিটিকে স্বয়ংক্রিয়ভাবে বলা হয় না। অতএব, প্রোগ্রামার এই পদ্ধতি বাস্তবায়ন করা উচিত. এই পদ্ধতিটি চালু করার সাথে সাথেই নির্দিষ্ট অব্যবস্থাপিত সংস্থানের মেমরি প্রকাশিত হয়। এই পদ্ধতিটি আইডিসপোজেবল ইন্টারফেসে ঘোষণা করা হয়েছে।
চূড়ান্ত কি ()?
ফাইনালাইজ পদ্ধতিটি শুধুমাত্র আবর্জনা সংগ্রাহক দ্বারা বলা হয় যখন একটি বস্তুর রেফারেন্স আর ব্যবহার করা হয় না। বস্তু ধ্বংস করার ঠিক আগে এই পদ্ধতি বলা হয়। এই পদ্ধতিটি ধ্বংসকারীর সাহায্যে প্রয়োগ করা হয়। চূড়ান্ত করার পদ্ধতিটি java.lang.object ক্লাসে সংজ্ঞায়িত করা হয়েছে। এই পদ্ধতি সুরক্ষিত হিসাবে ঘোষণা করা হয়. অন্যান্য শ্রেণীর দ্বারা অ্যাক্সেস এড়াতে এটি সর্বজনীন হিসাবে ঘোষণা করা হয় না। সামগ্রিকভাবে, চূড়ান্ত করার পদ্ধতিটি প্রোগ্রামের কর্মক্ষমতা কমিয়ে দিতে পারে কারণ এটি তাৎক্ষণিকভাবে মেমরি মুক্ত করে না।
নিষ্পত্তি () এবং চূড়ান্ত করা() এর মধ্যে মিল কী?
অনিয়ন্ত্রিত সম্পদের জন্য বরাদ্দ করা মেমরি মুক্ত করতে নিষ্পত্তি () এবং চূড়ান্ত () উভয়ই ব্যবহার করা যেতে পারে।
নিষ্পত্তি () এবং চূড়ান্ত করা() এর মধ্যে পার্থক্য কী?
নিষ্পত্তি () বনাম চূড়ান্ত করা () |
|
ডিসপোজ () হল অব্যবস্থাপিত সংস্থানগুলি বন্ধ বা ছেড়ে দেওয়ার একটি পদ্ধতি যেমন ফাইল, কোনও বস্তুর দ্বারা ধারণকৃত স্ট্রীম৷ | ফাইনালাইজ হল অবজেক্টটি ধ্বংস হওয়ার আগে বর্তমান অবজেক্টের অব্যবস্থাপিত সংস্থানগুলির উপর ক্লিন আপ অপারেশন করার একটি পদ্ধতি৷ |
উদ্দেশ্য | |
অনিয়ন্ত্রিত সম্পদ মুক্ত করার জন্য নিষ্পত্তি পদ্ধতি ব্যবহার করা হয় যখন এটি আহ্বান করা হয়। | অবজেক্ট ধ্বংস হওয়ার আগে অব্যবস্থাপিত সংস্থানগুলিকে মুক্ত করতে চূড়ান্ত পদ্ধতিটি ব্যবহার করা হয়। |
সংজ্ঞায়িত ইন্টারফেস বা ক্লাস | |
ডিসপোজেবল () ইন্টারফেস আইডিসপোজেবল ইন্টারফেসে সংজ্ঞায়িত করা হয়েছে। | ফাইনালাইজ () java.lang.object ক্লাসে সংজ্ঞায়িত করা হয়েছে। |
আহ্বান করার পদ্ধতি | |
ডিসপোজ পদ্ধতিটি প্রোগ্রামার দ্বারা আহ্বান করা হয়৷ | চূড়ান্ত পদ্ধতিটি আবর্জনা সংগ্রহকারী দ্বারা আহ্বান করা হয়। |
অ্যাক্সেস স্পেসিফায়ার | |
নিষ্পত্তি পদ্ধতি সর্বজনীন৷ | চূড়ান্ত পদ্ধতি সুরক্ষিত। |
গতি | |
নিষ্কাশন পদ্ধতি অবিলম্বে আহ্বান করা হয়৷ | চূড়ান্ত পদ্ধতিটি ধীরে ধীরে আহ্বান করা হয়৷ |
পারফরম্যান্স | |
ডিসপোজ প্রোগ্রামের কর্মক্ষমতা কমিয়ে দেবে না। | চূড়ান্ত পদ্ধতি প্রোগ্রামের কর্মক্ষমতা কমিয়ে দিতে পারে। |
সারাংশ – নিষ্পত্তি () বনাম চূড়ান্ত করা ()
এই নিবন্ধটি C এ নিষ্পত্তি এবং চূড়ান্ত পদ্ধতির মধ্যে পার্থক্য নিয়ে আলোচনা করেছে। ডিসপোজ () এবং ফাইনালাইজ () এর মধ্যে পার্থক্য হল, ডিসপোজ () স্পষ্টভাবে প্রোগ্রামার দ্বারা আহ্বান করতে হবে যখন চূড়ান্ত () বস্তুটি ধ্বংস করার আগে আবর্জনা সংগ্রহকারীর দ্বারা আহ্বান করা হয়।