"स्वचालित" वास्तव में "पुनः प्रवेश" का अर्थ है। शब्द स्वयं को सॉफ़्टवेयर भाषाओं से चुराया जाता है - उदाहरण के लिए, सी में "ऑटो" कीवर्ड को वैरिएबल घोषित करने के लिए वैरिएबल के रूप में आवंटित किया जाता है, जब उस दायरे को निष्पादित किया जाता है, और बाद में हटा दिया जाता है, ताकि एक ही दायरे के एकाधिक आमंत्रण उस चर के निरंतर मूल्यों को न देखें। सी में इस कीवर्ड के बारे में आपने जो कारण नहीं सुना है, वह यह है कि यह सभी प्रकार के लिए डिफ़ॉल्ट स्टोरेज क्लास है :-) विकल्प "स्थैतिक" हैं, जिसका अर्थ है "इस चर को स्थिर रूप से आवंटित करें (स्मृति में एक वैश्विक स्थान पर), और इस निष्पादन के दौरान इस स्मृति स्थान को संदर्भित करें, इस पर ध्यान दिए बिना कि फ़ंक्शन कितनी बार लागू किया जाता है ", और" अस्थिर ", जिसका अर्थ है" यह मेरे एसओसी पर कहीं और एक अन्य डिवाइस पर कुछ है जो मेरे पास नहीं है कंट्रोलर पर नियंत्रण करें, कृपया मुझे दूर पढ़ने के लिए अनुकूलन न करें, भले ही आपको लगता है कि आप पिछली पठन से अपना मूल्य जानते हैं, कोड में कोई मध्यवर्ती लिखने के साथ "।
"स्वचालित" रिकर्सिव फ़ंक्शंस के लिए है, लेकिन एक ही फ़ंक्शन को निष्पादन के विभिन्न थ्रेडों में एक साथ चलाने के लिए भी है। उदाहरण के लिए, यदि आप एन अलग-अलग ब्लॉक (वेरिलोग के फोर्क-> जॉइन स्टेटमेंट का उपयोग करके) से "कांटा" करते हैं, और उन्हें एक ही समय में एक ही फ़ंक्शन को कॉल करते हैं, वही समस्याएं एक फ़ंक्शन के रूप में उत्पन्न होती हैं जो स्वयं को बार-बार कॉल करती है।
कई मामलों में, आपका कोड कार्य या कार्य को "स्वचालित" के रूप में घोषित किए बिना ठीक होगा, लेकिन इसे तब तक रखने का अच्छा अभ्यास है जब तक कि आपको विशेष रूप से अन्यथा होने की आवश्यकता न हो।
स्रोत
2008-09-19 05:42:01