2011-03-19 13 views
5


जब मैं एक एसओएपी अनुरोध करता हूं तो मैं देख सकता हूं (कार्य प्रबंधक में) कि मेरे आवेदन की संख्या 1 (मुख्य धागा) से 8 तक बढ़ जाती है, इसका मतलब है 7 अतिरिक्त धागे, यह हिस्सा है ठीक है, हालांकि सेवा से प्रतिक्रिया प्राप्त होने के बाद, धागे की संख्या 4 (3 + मुख्य थ्रेड) तक घट जाती है और अगले अनुरोध तक तब तक रहता है। चूंकि मैं SOAP के साथ सहज नहीं हूं और इसके साथ बहुत अधिक काम नहीं किया है, क्या किसी को पता है कि यह सामान्य है या यदि मैं "लटकते" थ्रेड को मार/रोक सकता हूं?
डेल्फी 2010एसओएपी अनुरोध

अतिरिक्त जानकारी: मैं थ्रेड में अनुरोध चला रहा हूं और हाँ, मैं निष्पादन विधि में "CoInitialize" और "CoUninitialize" को कॉल करता हूं।

टेस्ट आवेदन: http://www.2shared.com/file/_dE4H-lO/soap_test_app.html

आप सभी अपने समय के लिए धन्यवाद।

+0

क्या आप अपने ऐप में कोई थ्रेड बना रहे हैं? कारण मैं पूछता हूं कि यह थ्रेड में SOAP अनुरोध चलाने के लिए बहुत उपयोगी है, इसलिए यह आपके मुख्य ऐप को अवरुद्ध नहीं करेगा। –

+0

@ क्रिस क्षमा करें मैं कुछ अजीब कारणों से इसका उल्लेख करना भूल गया, हाँ, मैं थ्रेड में अनुरोध चला रहा हूं और मैं वस्तुओं को गतिशील रूप से बना रहा हूं और उन्हें मुक्त कर रहा हूं। – ComputerSaysNo

+0

क्या आप उदाहरण कोड का थोड़ा सा प्रदान कर सकते हैं? इस तरह हम आपके मामले को पुन: पेश करने का प्रयास कर सकते हैं और देख सकते हैं कि कौन से ट्रेड सक्रिय हैं। बीटीडब्लू: आप यह देखने के लिए [प्रोसेस एक्सप्लोरर] (http://technet.microsoft.com/en-us/sysinternals/bb896653) का उपयोग कर सकते हैं कि कौन से धागे सक्रिय हैं। –

उत्तर

1

ऐप का कुछ अन्य हिस्सा एसओएपी स्टैक में कुछ रेफकाउंट कर रहा है। उन धागे तब तक नहीं चलेगा जब तक कि बाकी की सफाई न हो जाए।

क्या होता है यदि आप बार-बार SOAP फ़ंक्शन को कॉल करते हैं? क्या यह हर बार 3 से बढ़ता रहता है या यह बस जाता है? यदि यह बढ़ता जा रहा है तो आपके पास कुछ करने के लिए कुछ है। यदि नहीं, तो यह निम्न स्तर का फ़ंक्शन और (शायद) आपकी समस्या नहीं है। स्मृति पर नजर रखें और देखें कि क्या समय के साथ लीक हो रहा है (एएसपी जब आप उस पर हथौड़ा लगाते हैं)।

+0

थ्रेड की संख्या (दूसरी कॉल के बाद) प्रत्येक अनुरोध के लिए 2 से बढ़ जाती है और घट जाती है, मेमोरी लीकिंग के बारे में: मुझे यकीन नहीं है कि यह अभी भी लीक होने पर, मुझे एक या दो दिन में पता चल जाएगा। – ComputerSaysNo

+0

यह पता लगाने के लिए 'परफमन' का उपयोग करें कि क्या यह – ethrbunny

+0

लीक कर रहा है, तो क्या आप एक लिंक प्रदान कर सकते हैं? – ComputerSaysNo

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