সি # তে নিষ্পত্তি () এবং চূড়ান্তকরণ () এর মধ্যে পার্থক্য

লেখক: Laura McKinney
সৃষ্টির তারিখ: 2 এপ্রিল 2021
আপডেটের তারিখ: 8 মে 2024
Anonim
সমাপনী সনদ
ভিডিও: সমাপনী সনদ

কন্টেন্ট


পদ্ধতিগুলি নিষ্পত্তি () এবং চূড়ান্তকরণ () হ'ল সি # এর পদ্ধতি যা কোনও অবজেক্টের দ্বারা পরিচালিত অপরিশোধিত সম্পদকে মুক্ত করতে অনুরোধ করা হয়। ডিসপোজ () পদ্ধতিটি ইন্টারফেসের ভিতরে নির্ধারিত হয় আইডিজিপোজযোগ্য, যদিও পদ্ধতিটি চূড়ান্ত () শ্রেণীর অবজেক্টের ভিতরে সংজ্ঞায়িত করা হয়। নিষ্পত্তি () এবং চূড়ান্তকরণ () এর মধ্যে প্রধান পার্থক্য হল সেই পদ্ধতি মীমাংসা করা() ব্যবহারকারীর দ্বারা স্পষ্টভাবে অনুরোধ করতে হবে যদিও পদ্ধতিটি চূড়ান্ত () বস্তুটি বিনষ্ট হওয়ার ঠিক আগে, আবর্জনা সংগ্রহকারী দ্বারা আহবান করা হয়। আসুন নীচে প্রদর্শিত তুলনা চার্টের সাহায্যে তাদের মধ্যে কিছু অন্যান্য পার্থক্য অধ্যয়ন করি।

  1. তুলনা রেখাচিত্র
  2. সংজ্ঞা
  3. মূল পার্থক্য
  4. উপসংহার

তুলনা রেখাচিত্র

তুলনা করার জন্য বেসনিষ্পত্তি ()চূড়ান্ত করা ()
নির্ধারিতপদ্ধতি নিষ্পত্তি () ইন্টারফেস IDisposable ইন্টারফেসে সংজ্ঞায়িত করা হয়।পদ্ধতিটি চূড়ান্ত করুন () আইডি java.lang.object শ্রেণিতে সংজ্ঞায়িত।
বাক্য গঠনপাবলিক অকার্যকর নিষ্পত্তি () {
// কোডটি এখানে ডিসপোজ করুন
}
সুরক্ষিত অকার্যকর চূড়ান্তকরণ () {
// চূড়ান্তকরণ কোড এখানে
}
প্রার্থনা পদ্ধতি নিষ্পত্তি () ব্যবহারকারীর দ্বারা চাওয়া হয়।পদ্ধতিটি চূড়ান্ত করে () আবর্জনা সংগ্রহকারী দ্বারা প্রার্থিত হয়।
উদ্দেশ্যমেথড ডিসপোজ () যখনই ডাকা হয় এটি পরিচালনা না করা রিসোর্সগুলি মুক্ত করতে ব্যবহৃত হয়।অবজেক্টটি বিনষ্ট হওয়ার আগে অব্যবহৃত পরিচালনগুলি মুক্ত করার জন্য পদ্ধতি চূড়ান্তকরণ () ব্যবহার করা হয়।
বাস্তবায়নযখনই কোনও নিকটবর্তী () পদ্ধতি রয়েছে তখন পদ্ধতিটি নিষ্পত্তি () প্রয়োগ করতে হয়।পদ্ধতিটি চূড়ান্ত করতে হবে () নিয়ন্ত্রিত সংস্থাগুলির জন্য বাস্তবায়ন করতে হবে।
অ্যাক্সেস সুনির্দিষ্টপদ্ধতি নিষ্পত্তি () জনসাধারণ হিসাবে ঘোষণা করা হয়।পদ্ধতি চূড়ান্ত () ব্যক্তিগত হিসাবে ঘোষণা করা হয়।
কর্ম পদ্ধতিটি নিষ্পত্তি () দ্রুত এবং তাত্ক্ষণিকভাবে কোনও বস্তুকে নিষ্পত্তি করে।নিষ্পত্তি করার তুলনায় পদ্ধতিটি চূড়ান্ত করা ধীর
কর্মক্ষমতাপদ্ধতিটি নিষ্পত্তি করে () তাই তাত্ক্ষণিক ক্রিয়া সম্পাদন করে, ওয়েবসাইটগুলির কার্যকারিতাকে প্রভাবিত করে না। পদ্ধতি চূড়ান্ত () ধীর হওয়া ওয়েবসাইটগুলির কার্যকারিতা প্রভাবিত করে।


নিষ্পত্তি সংজ্ঞা ()

নিষ্পত্তি () পদ্ধতিটি পরিচালনা না করা সম্পদগুলি প্রকাশ করে যা শ্রেণীর কোনও অবজেক্টের দ্বারা ধারণ করা হয়। নিয়ন্ত্রণহীন সংস্থানসমূহ ফাইল, ডেটা সংযোগ ইত্যাদি The পদ্ধতিটি নিষ্পত্তি () ইন্টারফেসে ঘোষণা করা হয় IDisposeable এবং এটি ক্লাস দ্বারা ইন্টারফেস আইডিআইপোজেবল বাস্তবায়ন দ্বারা প্রয়োগ করা হয়। এই পদ্ধতিটি স্বয়ংক্রিয়ভাবে বলা হয় না। প্রোগ্রামারটিকে এটিকে ম্যানুয়ালি প্রয়োগ করতে হবে যখন আপনি একটি কাস্টম ক্লাস তৈরি করছেন যা অন্যরা ব্যবহার করবে। পদ্ধতিতে নিম্নলিখিত বাক্য গঠন রয়েছে:

সর্বজনীন শূন্য নিষ্পত্তি () {// কোড এখানে নিষ্পত্তি করুন}

উপরের সিনট্যাক্সে, আপনি পর্যবেক্ষণ করতে পারেন যে পদ্ধতিটি সর্বজনীন হিসাবে ঘোষিত হয়েছে। কারণ এই পদ্ধতিটি ইন্টারফেস আইডিস্পোজেবলের মধ্যে সংজ্ঞায়িত হয় এবং এটি এই ইন্টারফেসটি প্রয়োগ করে এমন শ্রেণীর দ্বারা প্রয়োগ করা উচিত। সুতরাং, বাস্তবায়নকারী শ্রেণীর অ্যাক্সেসযোগ্যতা সরবরাহ করার জন্য, পদ্ধতিটি জনসাধারণ হিসাবে ঘোষণা করা হয়।

এই পদ্ধতিটি কোনও প্রোগ্রামের কোড দ্বারা ম্যানুয়ালি আহ্বান জানানো হয় কারণ অনুরোধ করার জন্য এটি প্রয়োগ করা হয়। পদ্ধতিগুলির কার্য সম্পাদন দ্রুত, এবং এটি তাত্ক্ষণিকভাবে কোনও শ্রেণীর অবজেক্টের হাতে থাকা সংস্থানগুলি মুক্ত করে।


চূড়ান্তকরণ সংজ্ঞা ()

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

পদ্ধতির বাক্য গঠনটি চূড়ান্ত করে ():

সুরক্ষিত অকার্যকর চূড়ান্তকরণ () {// এখানে চূড়ান্তকরণ কোড}

উপরের সিনট্যাক্সে, পদ্ধতিটি চূড়ান্ত করে () সুরক্ষিত হিসাবে ঘোষণা করা হয়। এর পেছনের কারণটি হ'ল, পদ্ধতিটি চূড়ান্ত করা () অবশ্যই শ্রেণীর বাইরে থেকে অ্যাক্সেসযোগ্য হবে না এবং এটি কেবল আবর্জনা সংগ্রহকারীদের জন্যই অ্যাক্সেসযোগ্য।

চূড়ান্তকরণ () পদ্ধতিটি তাত্ক্ষণিকভাবে স্মৃতি মুক্ত করে না বলে কার্যকারিতার ব্যয়কে প্রভাবিত করে। সি # তে চূড়ান্তকরণ পদ্ধতিটি ধ্বংসকারীদের সাথে স্বয়ংক্রিয়ভাবে বলা হয়।

  1. পদ্ধতি নিষ্পত্তি () একটি ইন্টারফেসে সংজ্ঞায়িত করা হয় IDisposable। অন্যদিকে, পদ্ধতি চূড়ান্ত () শ্রেণিতে সংজ্ঞায়িত করা হয় উদ্দেশ্য.
  2. পদ্ধতিটি নিষ্পত্তি () কোনও প্রোগ্রামার দ্বারা কোডের ভিতরে ম্যানুয়ালি আহ্বান করতে হবে, যখন পদ্ধতিটি চূড়ান্ত করতে আবশ্যক না হলে এটি আবশ্যকভাবে আবর্জনা সংগ্রহকারী দ্বারা স্বয়ংক্রিয়ভাবে আহ্বান করা হবে।
  3. পদ্ধতিটি নিষ্পত্তি করা যে কোনও সময়ই করা যেতে পারে, অন্যদিকে পদ্ধতিটি চূড়ান্ত করার বিষয়টি আবর্জনা সংগ্রহকারী দ্বারা আহ্বান জানানো হয় যখন দেখা যায় যে সেই বস্তুটি দীর্ঘকাল ধরে রেফারেন্স করা হয়নি।
  4. পদ্ধতি নিষ্পত্তি () ইন্টারফেস আইডিস্পোজেবল বাস্তবায়নের পরে একটি শ্রেণিতে প্রয়োগ করা হয়। পদ্ধতির চূড়ান্তকরণ () কেবলমাত্র এর জন্য প্রয়োগ করতে হবে নিয়ন্ত্রণহীন সংস্থানসমূহ কারণ পরিচালিত সংস্থানগুলি আবর্জনা সংগ্রহকারী দ্বারা স্বয়ংক্রিয়ভাবে মুক্ত হয়।
  5. পদ্ধতিটি নিষ্পত্তি করার অ্যাক্সেস সুনির্দিষ্ট () জনসাধারণ হিসাবে এটি ইন্টারফেস আইডিস্পোজেবল হিসাবে সংজ্ঞায়িত করা হয়েছে এবং এটি শ্রেণীর দ্বারা প্রয়োগ করা হবে যা এই ইন্টারফেসটিকে কার্যকর করে, এটি সর্বজনীন হওয়া উচিত। অন্যদিকে, পদ্ধতিটি চূড়ান্ত করে () অ্যাক্সেস সুনির্দিষ্টকে সুরক্ষিত করেছে যাতে এটি শ্রেণীর বাইরের কোনও সদস্যের অ্যাক্সেসযোগ্য না হয়।
  6. পদ্ধতিটি নিষ্পত্তি () দ্রুত এবং অবিলম্বে অবজেক্টটিকে মুক্তি দেয়, এটি কার্য সম্পাদন ব্যয়কে প্রভাবিত করে না। পদ্ধতিটি চূড়ান্ত করুন () ধীরে ধীরে এবং অবজেক্টের হাতে থাকা সংস্থানগুলি তাত্ক্ষণিকভাবে মুক্ত করে না।

উপসংহার:

এটি চূড়ান্তকরণের চেয়ে দ্রুত হওয়ায় পদ্ধতির চূড়ান্তকরণ () পদ্ধতিতে পদ্ধতির নিষ্পত্তি () ব্যবহার করার পরামর্শ দেওয়া হয়। এছাড়াও, এটি যে কোনও সময় বলা যেতে পারে, যখন প্রয়োজন হয়।