আমার বোধগম্যতা হল যে মুটেক্সের সর্বাধিক জনপ্রিয় প্রয়োগগুলি (যেমন সি ++ তে স্টডি: মিটেক্স) ন্যায্যতার গ্যারান্টি দেয় না - অর্থাত্ তারা গ্যারান্টি দেয় না যে তর্ক করার ক্ষেত্রে লকটি থ্রেড দ্বারা ক্রম হিসাবে অর্জিত হবে যে তারা বলা হয় লক ()। প্রকৃতপক্ষে, এটি এমনকি সম্ভব (যদিও আশান্বিতভাবে অস্বাভাবিক) যে উচ্চ বিতর্কগুলির ক্ষেত্রে, মুটিেক্স অর্জনের জন্য অপেক্ষা করা কিছু থ্রেড কখনও এটি অর্জন করতে পারে না ।
এটি আমার কাছে একটি অস্বাস্থ্যকর আচরণের মতো বলে মনে হচ্ছে - আমার কাছে মনে হয় যে কোনও প্রোগ্রামার কী চান / প্রত্যাশা করে তার সাথে সামঞ্জস্য রেখে একটি ন্যায্য মুটেক্স আচরণটি আরও বেশি উত্পন্ন করবে।
কেন মুটেক্সেসকে সাধারণত ন্যায্য হিসাবে প্রয়োগ করা হয় না তার কারণটি হ'ল "পারফরম্যান্স", তবে আমি এর অর্থটি আরও ভালভাবে বুঝতে চাই - বিশেষত, কীভাবে মুটেক্সের ন্যায্যতার প্রয়োজনীয়তা শিথিল করা কার্যকারিতা উন্নত করে? দেখে মনে হচ্ছে এটি "ফর্সা" মিটেক্স বাস্তবায়নের জন্য তুচ্ছ হবে - কেবল থ্রেডটি ঘুমানোর আগে কলিং থ্রেডটিকে মুটেক্সের লিঙ্কযুক্ত তালিকার সাথে যুক্ত করুন এবং তারপরে পরবর্তী থ্রেডটি আনলক করুন () একই তালিকা প্রধান এবং এটি জাগ্রত।
আমি এখানে কোন মিউটেক্স-বাস্তবায়ন অন্তর্দৃষ্টি অনুপস্থিত রয়েছি, এটি ব্যাখ্যা করবে যে কেন আরও ভাল পারফরম্যান্সের জন্য ন্যায্যতা উত্সর্গ করা উপযুক্ত বলে বিবেচিত হয়েছিল?