একটি লাইটওয়েট এবং একটি হেভিওয়েট প্রক্রিয়া মধ্যে পার্থক্য কি?

0
12758
[সংক্ষিপ্ত উত্তর: থ্রেড লাইটওয়েট, প্রোগ্রাম (ওরফে প্রসেস বা কাজ) হেভিওয়েট। -আলেক্স]

লাইটওয়েট এবং হেভিওয়েট প্রক্রিয়াগুলি একটি মাল্টি-প্রসেসিং সিস্টেমের মেকানিক্সকে বোঝায়।

একটি লাইটওয়েট প্রক্রিয়ায়, থ্রেডগুলি কাজের চাপকে ভাগ করার জন্য ব্যবহার করা হয়। এখানে আপনি OS-এ একটি প্রক্রিয়া নির্বাহ করতে দেখতে পাবেন (এই অ্যাপ্লিকেশন বা পরিষেবার জন্য।) এই প্রক্রিয়াটিতে 1 বা তার বেশি থ্রেড থাকবে। এই প্রক্রিয়ার প্রতিটি থ্রেড একই ঠিকানার স্থান ভাগ করে। যেহেতু থ্রেডগুলি তাদের ঠিকানার স্থান ভাগ করে নেয়, তাই থ্রেডগুলির মধ্যে যোগাযোগ সহজ এবং দক্ষ। প্রতিটি থ্রেড হেভিওয়েট পরিস্থিতিতে একটি প্রক্রিয়ার সাথে তুলনা করা যেতে পারে।

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

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