কম্পিউটার টিউটোরিয়াল

পাইথন গার্বেজ কलेক্টর ইন্টারফেস (gc)


স್ವয়ংক্রিয় গার্বেজ কलेکশন পাইথনের একটি গুরুত্বপূর্ণ বৈশিষ্ট্য। গার্বেজ কালেক্টর মেকানিজম প্রোগ্রাম দ্বারা আর ব্যবহার না করা অবজেক্টগুলোর заня্ত মেমরি পুনঃপ্রাপ্ত করার চেষ্টা করে।

পাইথন গার্বেজ কलेকশনের জন্য রেফারেন্স কাউন্টিং মেকানিজম ব্যবহার করে। পাইথন ইন্টারপ্রেটার একটি অবজেক্ট কতবার অন্য অবজেক্টগুলোর 의해 রেফারেন্স করা হয়েছে তার গণনা রাখে। যখন একটি অবজেক্টের রেফারেন্সগুলো মুছে ফেলা হয়, তখন সেই অবজেক্টের কাউন্ট কমে যায়। রেফারেন্স কাউন্ট শূন্য হলে অবজেক্টের মেমরি ফরি করা হয়।

সাধারণত এই মেকানিজম স্বয়ংক্রিয়ভাবে হয়। তবে প্রোগ্রামে নির্দিষ্ট পরিস্থিতি উদ্ভূত হলে এটি ইচ্ছাকৃতভাবেও করা যায়। 'gc' মডিউলটি গার্বেজ কलेকশন ইন্টারফেস সংজ্ঞায়িত করে। 'gc' মডিউলে নিচের ফাংশনগুলো সংজ্ঞায়িত:

enable() স্বয়ংক্রিয় গার্বেজ কালেকশন সক্রিয় করে।
disable() স্বয়ংক্রিয় গার্বেজ কালেকশন নিষ্ক্রিয় করে।
isenabled() স্বয়ংক্রিয় কালেকশন সক্রিয় থাকলে True রিটার্ন করে।
collect() আর্গুমেন্ট ছাড়া ফুল কালেকশন চালায়। অপশনাল ইন্টিজার আর্গুমেন্ট জেনারেশন নির্দিষ্ট করে (০ থেকে ২)। অবৈধ জেনারেশন নম্বরে ValueError উত্থাপন করে। খুঁজে পাওয়া অনয়নযোগ্য অবজেক্টের সংখ্যা রিটার্ন করে।
set_threshold() গার্বেজ কালেকশন থ্রেশহোল্ড (কালেকশন ফ্রিকোয়েন্সি) সেট করে।
get_threshold() বর্তমান কালেকশন থ্রেশহোল্ডগুলো টাপল হিসেবে রিটার্ন করে।
callbacks গার্বেজ কালেক্টর দ্বারা কালেকশনের আগে এবং পরে আহ্বান করা কলব্যাক ফাংশনগুলোর তালিকা।

  1. পাইথনে লো-লেভেল নেটওয়ার্কিং ইন্টারফেস (socket)

  2. রুবি GC মাস্টার: অপ্টিমাল পারফরম্যান্সের জন্য প্র্যাকটিক্যাল টিউনিং

  3. রুবির গার্বেজ কালেকশনে গভীরতর বাড়ুন: MRI ইমপ্লিমেন্টেশন ব্যাখ্যা

  4. রুবিতে গার্বেজ কালেকশন বুঝুন: পার্ট I