java - Background Thread for a Tomcat servlet app -
इस सवाल का पहले से ही एक उत्तर है: < / P>
- 4 जवाब
मैं बहुत परिचित नहीं हूँ टॉमकेट, मेरे सिर में यह मूल रूप से सीजीआई सर्वर के रूप में समतल है जो कॉल के बीच जेवीवी बचाता है - मुझे पता है कि यह उस से बहुत कुछ कर सकता है, यद्यपि।
मैं टॉमकेट सर्वर शुरू होने पर एक पृष्ठभूमि थ्रेड लॉन्च करने के लिए एक मार्ग की तलाश कर रहा हूं, जो समय-समय पर सर्वर संदर्भ को अपडेट करता है (मेरे विशेष मामले में यह एक धागा है जो सुनता है कुछ अन्य सेवाओं से दिल की धड़कन और उपलब्धता की जानकारी अपडेट करते हैं, लेकिन इसके लिए कई तरह के उपयोगों की कल्पना कर सकते हैं)
क्या ऐसा करने का एक मानक तरीका है? दोनों प्रक्षेपण, और संदर्भ के अद्यतन / पूछताछ?
प्रासंगिक दस्तावेज और / या कोड के नमूने के लिए कोई भी संकेत बहुत सराहना की जाएगी।
यदि आप अपने युद्ध की तैनाती के दौरान एक धागा शुरू करना चाहते हैं, तो आप web.xml के भीतर संदर्भ श्रोता को परिभाषित कर सकते हैं:
& LT; वेब एप्लिकेशन & gt; & LT; श्रोता & gt; & LT; श्रोता श्रेणी & gt; com.mypackage.MyServletContextListener & lt; / श्रोता श्रेणी & gt; & Lt; / श्रोता & gt; & Lt; / वेब एप्लिकेशन & gt; फिर उस वर्ग को लागू करें जैसे:
सार्वजनिक वर्ग MyServletContextListener ServletContextListener {निजी MyThreadClass myThread = null; सार्वजनिक शून्य संदर्भ शुरू (ServletContextEvent sce) {if ((myThread == रिक्त) || (! MyThread.isAlive ())) {myThread = new MyThreadClass (); myThread.start (); }} सार्वजनिक शून्य संदर्भ नष्ट (सर्लेटकॉन्टेक्सइवेंट एससी) {try {myThread.doShutdown ()} myThread.interrupt (); } पकड़ (अपवाद पूर्व) {}}}
Comments
Post a Comment