2012-05-29 11 views
8

मैं पाइथन में वेब विकास के लिए नया हूं और मैंने अपना वेब एप्लिकेशन शुरू करने के लिए फ्लास्क चुना है। एप्लिकेशन शटडाउन से पहले मेरे पास कुछ संसाधन निःशुल्क हैं, लेकिन मुझे नहीं पता कि मेरा क्लीनअप कोड कहां रखा जाए। फ्लास्क अनुरोध प्रसंस्करण से पहले और बाद में कॉलबैक पंजीकृत करने के लिए before_request और teardown_request जैसे कुछ सजावटी प्रदान करता है। एप्लिकेशन बंद होने से पहले कॉलबैक को कॉल करने के लिए कुछ ऐसा ही है? धन्यवाद।मैं फ्लास्क एप्लिकेशन में क्लीनअप कोड कहां रखूं?

+3

क्या संसाधन? –

+0

जब एप्लिकेशन बंद हो जाता है तो मुझे फ्लास्क द्वारा प्रदान की जाने वाली सुविधा नहीं पता है। यह जानना दिलचस्प होगा कि आप वास्तव में क्या सफाई करना चाहते हैं। पायथन में 'atexit' मॉड्यूल है, जो आप खोज रहे हैं। –

+0

मैं एक neo4j डेटाबेस का उपयोग कर रहा हूं और मैं एक कनेक्शन पूल रखता हूं। मुझे लगता है कि एटएक्सिट नौकरी करेगा। क्या यह मेरा क्लीनअप कोड डालने के लिए अधिक उपयुक्त जगह है? –

उत्तर

3

atexit मॉड्यूल आपको प्रोग्राम समाप्ति कॉलबैक पंजीकृत करने की अनुमति देता है। इसके कॉलबैक को तब नहीं कहा जाएगा जब आवेदन सिग्नल द्वारा समाप्त हो जाता है। यदि आपको उन मामलों को संभालने की आवश्यकता है, तो आप उसी कॉलबैक को signal मॉड्यूल के साथ पंजीकृत कर सकते हैं (उदाहरण के लिए आप सिगरेट सिग्नल को संभालना चाहते हैं)।

मुझे गलत समझा जा सकता है कि आप वास्तव में क्या सफाई करना चाहते हैं, लेकिन फाइल हैंडल या डेटाबेस कनेक्शन जैसे संसाधन दुभाषिया शट डाउन पर बंद हो जाएंगे, इसलिए आपको उन लोगों के बारे में चिंता करने की ज़रूरत नहीं है।

संबंधित मुद्दे