डेडलॉक्स के कई बार सुनें, लेकिन मल्टीथ्रेड प्रोग्रामिंग के संदर्भ में ड्रेडलॉक क्या है?"ड्रेडलॉक" क्या है? ("आर" नोट करें)
अद्यतन:IAbstract's answer एक श्वेतपत्र जो एल्गोरिथ्म dreadlock (एक उत्पाद नहीं ऐसा लगता है) का नाम बताते हैं करने के लिए लिंक। यह अवधारणा को पूरी तरह से कवर करता है। हालांकि, संक्षेप में संक्षेप में सारांशित करें कि यह क्या है:
डेडलॉक्स का पता लगाने का एक आम तरीका यह है कि कौन से धागे लॉक कर रहे हैं, इस संसाधन को ट्रैक करना है। यह मूल रूप से थ्रेड-टू-रिसोर्स ग्राफ उत्पन्न करता है, और जब इस ग्राफ में एक चक्र प्रकट होता है तो एक डेडलॉक हुआ है। इस विधि को स्पिन-लॉक के रूप में जाना जाता है और यह महंगा होने के लिए भी जाना जाता है, इसलिए सरल लॉकिंग-टाइमआउट जैसे अधिक कुशल विकल्प भी आमतौर पर उपयोग किए जाते हैं। लॉकिंग चक्रों का ट्रैक रखने के लिए आवश्यक डेटा की मात्रा को कम करके, ड्रेडलॉक एल्गोरिदम नियमित स्पिन-लॉक एल्गोरिदम में अप्रभावीता का समाधान प्रतीत होता है।
शायद यह (Google के माध्यम से पाया गया): http://www.cl.cam.ac.uk/~ejk39/papers/dreadlocks-spaa08.pdf –
@ फ़ेलिक्स: चीयर्स, उत्तर के लिए एक अच्छा उम्मीदवार हो सकता है * संकेत * :-) – sharkin
मुझे लगता है कि यह deadlocks होने का डर है ... – Abizern