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

জাভা ৯-এ মেমরি ম্যানেজমেন্টে পরিবর্তন (Changes in Memory Management)


গার্বেজ কালেকশন (Garbage Collection) বা সংক্ষেপে GC হলো জাভায় মেমরি ম্যানেজমেন্ট-র কোর অংশ। এটি মেমরি থেকে ডেড অবজেক্ট ক্লিন করে সেই স্পেস রিক্লেইম করার জন্য দায়িত্বশীল। GC প্রি-ডিফাইনড গার্বেজ কলেক্টর (Garbage Collectors) ব্যবহার করে ক্লিনআপ এক্সিকিউট করে যা নির্দিষ্ট অ্যালগরিদম ব্যবহার করে।

নিচে কিছু গুরুত্বপূর্ণ গার্বেজ কলেক্টর টাইপ দেওয়া হলো:

  • Serial GC: একটি সিঙ্গেল থ্রেড কলেক্টর এবং ছোট অ্যাপ্লিকেশন এবং ছোট ডেটা ব্যবহারের জন্য প্রযোজ্য। এটি কমান্ড-লাইন অপশন: -XX:+UseSerialGC দিয়ে ইনেবল করা যায়।
  • Parallel GC: প্যারালেল GC গার্বেজ কলেক্টিং প্রসেস করতে একাধিক থ্রেড ব্যবহার করে, এবং এটিকে থ্রুপুট কলেক্টর ও বলা হয়। এটি এক্সপ্লিসিটলি অপশন: -XX:+UseParallelGC দিয়ে ইনেবল করা যায়।
  • G1 Garbage First: G1 (Garbage First) হলো জাভা ৯-এ ডিফল্ট গার্বেজ কলেক্টর। এটি মাল্টি-প্রসেসর মেশিনে বড় মেমরি স্পেসে চলমান অ্যাপ্লিকেশনের জন্য ডিজাইন করা। এটি অপশন: -XX:+UseG1GC দিয়ে ইনেবল করা যায়।
  • Concurrent Mark Sweep: অ্যাপ্লিকেশন পজ টাইম न्यূনতম রাখা হয়। এটি অপশন: -XX:+UseConcMarkSweepGC দিয়ে ব্যবহার করা হয়। জাভা ৯-এ এই GC টাইপ ডিপ্রিকেটেড (deprecated)।

  1. জাভা ৯-এ try-with-resources-এর উন্নতি

  2. জাভাতে ক্লাসের বিভিন্ন প্রকার কী কী?

  3. জাভাতে StackOverflowError এবং OutOfMemoryError-এর পার্থক্য

  4. জাভাতে হিপ মেমরি এবং স্ট্রিং কনস্ট্যান্ট পুলের পার্থক্য