Monday 15 April 2013

unix - kill -INT vs kill -TERM -


SIGINT संकेत और SIGTERM संकेत के बीच क्या अंतर है? मुझे पता है कि SIGINT कुंजीपटल पर Ctrl + C दबाने के बराबर है, लेकिन SIGTERM क्या है? अगर मैं कुछ पृष्ठभूमि प्रक्रिया को सुन्दर रूप से बंद करना चाहता हूं, तो इनमें से किस का उपयोग करना चाहिए?

प्रतिक्रिया डेवलपर पर निर्भर है यदि डेवलपर एप्लिकेशन को SIGTERM को SIGINT से अलग तरह से जवाब देना चाहता है, तो अलग-अलग हैंडलर्स पंजीकृत होंगे। यदि आप एक पृष्ठभूमि प्रक्रिया को सुन्दर रूप से बंद करना चाहते हैं, तो आप आमतौर पर SIGTERM भेज देंगे अगर आप किसी एप्लिकेशन को विकसित कर रहे हैं, तो आपको ईमानदारी से निकलकर SIGTERM का जवाब देना चाहिए। SIGINT को अक्सर उसी तरीके से संभाला जाता है, लेकिन हमेशा नहीं उदाहरण के लिए, यह रिपोर्टिंग स्थिति या आंशिक गणना द्वारा SIGINT पर प्रतिक्रिया करने के लिए अक्सर सुविधाजनक होता है इससे उपयोगकर्ता के लिए आंशिक परिणाम प्राप्त करने के लिए टर्मिनल पर आवेदन चलाना आसान हो जाता है, लेकिन प्रोग्राम को समाप्त करने में थोड़ा अधिक कठिन होता है क्योंकि आम तौर पर उपयोगकर्ता को एक और खोल खोलने की आवश्यकता होती है और SIGTERM के माध्यम से मारने । दूसरे शब्दों में, यह आवेदन पर निर्भर करता है लेकिन सम्मेलन को SIGTERM का अनुग्रहपूर्वक बंद करने का जवाब देना है, दोनों संकेतों के लिए डिफ़ॉल्ट क्रिया समाप्ति है, और अधिकांश अनुप्रयोग SIGINT इनायत से रोककर।

No comments:

Post a Comment