هو حالة توقف تحدث عندما تنتظر عمليتان بعضهما البعض للإفراج عن الموارد.
يؤدي لتجمد البرنامج ويتطلب تصميم دقيق لتجنب حدوثه في البرمجة متعددة المهام.