ম্যুটেন এবং সেমফোরের মধ্যে পার্থক্য

Anonim

মুথক্স বনাম সেমফোরা

একটি মিউটক্স একটি কক্ষের একক কী সমান। একটি হোল্ড কী, যে একটি হোল্ড অনুরূপ, একমাত্র যে রুম প্রবেশাধিকার থাকতে পারে। অ্যাক্সেসের ব্যক্তিটি পরবর্তীতে লাইনের পরবর্তী ব্যক্তিকে কী দিতে হবে। অতএব, একটি mutex শুধুমাত্র থ্রেড যে এটি পায় দ্বারা মুক্তি পাওয়া যাবে।

একটি mutex সাধারণত একটি রিঅেন্টেন্ট কোড '"একটি বিভাগের অ্যাক্সেস serialize ব্যবহৃত হয় একটি ধরনের কোড যা একযোগে বিভিন্ন থ্রেড দ্বারা সঞ্চালিত করতে সক্ষম হয় না। শুধুমাত্র একটি একক থ্রেড একটি বিভাগে অনুমোদিত হয়। এটি অন্য থ্রেডকে সারিতে অপেক্ষা করতে দেয়। একটি থ্রেড অ্যাক্সেস পেতে আগে, এটি অধ্যায় আপ দেয় আগে থ্রেড পর্যন্ত অপেক্ষা করতে হবে।

mutex একই উপমা ব্যবহার করে, semaphores অনুরূপ কী সংখ্যা যে অনুরূপ লক সঙ্গে একই সংখ্যা কক্ষ অ্যাক্সেস করতে পারেন। একটি semaphore বা একটি semaphore গণনা মান রুম থেকে প্রবেশ বা প্রস্থান করে যারা (থ্রেড) সংখ্যা সংখ্যা উপর নির্ভর করে। যদি 5 টি কক্ষ থাকে এবং তারা সব দখল করে থাকে, তবে সেমফোর কাউন্টটি শূন্য। যদি দুটি ঘরটি ছেড়ে যায়, তাহলে গণনাটি দুটি এবং দুটি কি দুটি সারিতে দেওয়া হবে।

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

তাই মূলত, একটি mutex একটি মূল্যমানের হিসাবে গণ্য করা যেতে পারে একটি মূল্যমানের হিসাবে।

স্যামফোরাসের হ্রাস এবং বৃদ্ধি থ্রেড সাধারণ সম্পদ অ্যাক্সেসের অনুরোধ করে অথবা বিভাগটি ছেড়ে দিচ্ছে কিনা তা নির্ভরশীল।

তত্ত্ব, mutex এবং (বাইনারি) semaphores শব্দগতভাবে অনুরূপ। Mutex বাস্তবায়ন semaphores ব্যবহার করা যাবে এবং তাই অন্যান্য উপায় কাছাকাছি হয় যাইহোক, বাস্তবিকভাবে, তারা একটি আলাদা আলাদা হতে পারে।

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

সংক্ষিপ্ত বিবরণ:

1 Mutex সাধারণত একটি সাধারণ সম্পদ অ্যাক্সেস serialize ব্যবহৃত হয়, যখন একটি semaphore সহস্রাধিক অ্যাক্সেস একটি সংখ্যা।

2। Mutex এক একটি গণনা সঙ্গে একটি semaphore মত হয়

3। Mutex শুধুমাত্র একটি একক থ্রেড অ্যাক্সেস করতে অনুমতি দেয় যখন semaphores সমানভাবে কোনো থ্রেড বা প্রক্রিয়া দ্বারা সংকেত হতে পারে।

4। স্যামফোরাস সিঙ্ক্রোনাইজেশনের জন্য আদর্শ এবং প্রায়ই ইভেন্ট নোটিফিকেশন এবং পারস্পরিক বর্জনের জন্য ব্যবহৃত হয় যখন mutex শুধুমাত্র পারস্পরিক বর্জনের জন্য প্রয়োগ করা হয়।