आम तौर पर, कोड का एक पुन: प्रवेश ब्लॉक एक ऐसा होता है जिसे पहले के आवेदक के समाप्त होने से पहले किसी अन्य अभिनेता द्वारा दर्ज किया जा सकता है, बिना किसी अभिनेता को कोड के माध्यम से ले जाने वाले पथ को प्रभावित किए बिना। यही है, कोड को फिर से दर्ज करना संभव है, जबकि यह पहले से चल रहा है और अभी भी सही परिणाम उत्पन्न कर रहा है।
ज्यादातर मामलों में, "अभिनेता" एक ही प्रक्रिया के धागे हैं, लेकिन thread safety और फिर से प्रवेशी की अवधारणाओं को आसानी से अलग कर रहे हैं: नहीं हर धागे की सुरक्षित ब्लॉक फिर से प्रवेशी, लेकिन हर फिर से प्रवेशी ब्लॉक थ्रेड-सुरक्षित है। यही है, पुन: प्रवेश थ्रेड सुरक्षा की तुलना में एक मजबूत संपत्ति है। रेमंड चेन से a good example कोड का एक ब्लॉक थ्रेड-सुरक्षित कैसे हो सकता है लेकिन पुन: प्रवेश नहीं कर सकता है।
कोड एक बार फिर से शुरू होने पर एक विशेष मामला है: उसी अभिनेता अपने स्वयं के आमंत्रण समाप्त होने से पहले कोड में कॉल कर रहा है, क्योंकि मार्क ग्रेवेल बताते हैं। सभी सही रिकर्सिव ब्लॉक फिर से प्रवेश कर रहे हैं; बेशक, हर पुन: प्रवेशकर्ता ब्लॉक रिकर्सिव नहीं है।
स्रोत
2010-02-16 16:11:23
आश्चर्यजनक रूप से पर्याप्त Google हिट: http://en.wikipedia.org/wiki/Reentrant_(subroutine) –
@ मिच, और यदि कोई आरटीओएस के लिए प्रासंगिक है जो थोड़ा सा अंश देता है और इसे "विषयों" के लिए विशिष्ट बनाता है जिसे "प्रश्न का थोड़ा सा" चुना जाना चाहिए, फिर उम्मीद है कि पहला Google हिट इस सवाल बन जाएगा और इस प्रकार SO .. जो हम सभी चाहते हैं, है ना? =) – Rob
@ रोब: शायद। यह कहना मुश्किल है ..... –