Friday 16 February 2018

Waitforexit संसाधित


एलीना: आपके उत्तर के लिए धन्यवाद। इस MSDN डॉक्टर (msdn. microsoften-uslibraryhellip) के निचले भाग में कुछ नोट्स हैं जो संभावित डेडलॉक के बारे में चेतावनी देते हैं यदि आप दोनों रीडायरेक्ट किए गए स्टडआउट और स्टर्डर धाराओं के अंत में पढ़ते हैं तो सिंक्रोनस रूप से। यह कहना मुश्किल है कि क्या आपका समाधान इस मुद्दे पर अतिसंवेदनशील है या नहीं। साथ ही, ऐसा प्रतीत होता है कि आप प्रक्रिया 39 stdoutstaderr आउटपुट को वापस इनपुट के रूप में भेज रहे हैं। क्यूं कर। ) ndash मैथ्यू पियाट 26 सितंबर 16 4:42 यह 4.5 और बाद के संस्करण के लिए एक और आधुनिक उम्मीदवार, कार्य समानांतर पुस्तकालय (टीपीएल) आधारित समाधान है। उपयोग का उदाहरण कार्यान्वयन 5 अक्टूबर को 10 बजे उत्तर दिया गया I बात यह है कि यह सरल और बेहतर तरीका है (हमें ऑटोआरससेट एवेन्ट की ज़रूरत नहीं है): उत्तर 14 जून 12 बजे 14:29 उत्तर दिया गया है, लेकिन आप ऐसा नहीं करना चाहिए. फ़ाइलनाम पथ quotggsci. exequot quot अपने कोड को सरल बनाने के लिए या शायद कुछ quotecho कमांड के बराबर path quotggsci. exequot का पालन करने के लिए obeycommand. txtquot का पालन करें अगर आप वास्तव में एक अलग obeycommand. txt फ़ाइल का उपयोग नहीं करना चाहते हैं। ndash Amit Naidu Jun 4 13 at 22:03 आपके समाधान में ऑटोआरससेटएवेंट की ज़रूरत नहीं है लेकिन आप चुनाव करते हैं। जब आप इवेंट का उपयोग करने के बजाय पोल करते हैं (जब वे उपलब्ध होते हैं) तो आप बिना किसी कारण के लिए सीपीयू का उपयोग कर रहे हैं और इससे पता चलता है कि आप खराब प्रोग्रामर हैं AutoResetEvent का उपयोग करते हुए अन्य के साथ तुलना में आपका समाधान वास्तव में खराब है। (लेकिन मैंने आपको -1 नहीं दिया क्योंकि आपने मदद करने की कोशिश की है)। ndash एरिक Ouellet 7 नवंबर 14 पर 18:38 मैं एक ही मुद्दा रहा था, लेकिन कारण अलग था हालांकि यह विंडोज 8 के तहत होगा, लेकिन विंडोज 7 के तहत नहीं। निम्नलिखित पंक्ति ने समस्या का कारण देखा है। समाधान UseShellExecute को अक्षम करने के लिए नहीं था अब मुझे एक शेल पॉपअप विंडो मिली है, जो अवांछित है, लेकिन कुछ खास नहीं होने की प्रतीक्षा करने वाले कार्यक्रम से बेहतर है। इसलिए मैंने इसके लिए निम्नलिखित कार्य-जोड़ा जोड़ा: अब मुझे केवल परेशानी का कारण यह है कि विंडोज 8 के तहत ऐसा क्यों हो रहा है पहली जगह पर। 13 जनवरी को 10:35 को उत्तर दिया मैंने एक ऐसा वर्ग बनाने की कोशिश की जो आपकी समस्या को हल करेगी जो अकसरसोनस स्ट्रीम का उपयोग करते हुए मार्क बियरर्स, रोब, स्टीवज्यू उत्तर लेते हुए आपकी समस्या को हल करेंगे। ऐसा करने से मुझे एहसास हुआ कि एसिंक्रोनस प्रोसेस आउटपुट स्ट्रीम से संबंधित एक बग पढ़ा गया है। आप ऐसा नहीं कर सकते: आपको सिस्टम प्राप्त होगा। अज्ञातऑपरेशन अपवाद मानकऑटो को पुनः निर्देशित नहीं किया गया है या प्रक्रिया अभी तक शुरू नहीं हुई है। फिर आपको प्रक्रिया शुरू होने के बाद एसिंक्रोनस आउटपुट को पढ़ना होगा: ऐसा करने से, रेस की स्थिति बनाओ क्योंकि आउटपुट स्ट्रीम आपको एसिंक्रोनस में सेट करने से पहले डेटा प्राप्त कर सकता है: तब कुछ लोग कह सकते हैं कि आपको स्ट्रीम से पहले ही पढ़ना होगा इसे अतुल्यकालिक से सेट करें लेकिन यही समस्या तब होती है तुल्यकालिक पढ़ने के बीच एक दौड़ की स्थिति होगी और स्ट्रीम को अतुल्यकालिक मोड में सेट किया जाएगा। वास्तविक प्रक्रिया में एक प्रक्रिया के आउटपुट स्ट्रीम के सुरक्षित असिंक्रोनस पठन को प्राप्त करने का कोई तरीका नहीं है, प्रक्रिया और प्रक्रिया स्टार्टइन्फो तैयार की गई है। आप संभावित रूप से अतुल्यकालिक पठन का उपयोग कर रहे हैं जैसे आपके केस के लिए अन्य उपयोगकर्ताओं द्वारा सुझाई गई। लेकिन आपको पता होना चाहिए कि आप दौड़ की स्थिति के कारण कुछ जानकारी याद कर सकते हैं। पढ़ने के लिए कि एमएसडीएन इसके बारे में क्या कहता है: प्रतीक्षाफ़ोअरएक्सिट () () () अधिभार का प्रयोग वर्तमान थ्रेड को समाप्त करने तक किया जाता है जब तक कि संबद्ध प्रक्रिया समाप्त नहीं हो जाती। इस विधि से बाहर निकलने की प्रक्रिया के लिए अनंत समय की प्रतीक्षा करने के लिए प्रक्रिया घटक को निर्देश दिया जाता है। इससे एक आवेदन को प्रत्युत्तर देना बंद हो सकता है। उदाहरण के लिए, यदि आप किसी उपयोगकर्ता इंटरफ़ेस के पास प्रोसेक्शन के लिए CloseMainWindow कहते हैं, तो संबंधित प्रक्रिया को समाप्त करने के लिए ऑपरेटिंग सिस्टम के लिए अनुरोध को नियंत्रित नहीं किया जा सकता है यदि प्रक्रिया को कभी भी इसके संदेश लूप में प्रवेश नहीं किया जाता है। यह ओवरलोड सुनिश्चित करता है कि सभी प्रसंस्करण पूर्ण हो गया है, जिसमें रीडायरेक्ट मानक आउटपुट के लिए एसिंक्रोनस इवेंट्स के हैंडलिंग भी शामिल है। जब मानक आउटपुट को एसिंक्रोनस इवेंट हैंडलर पर रीडायरेक्ट कर दिया गया है, तो आपको WaitForExit (Int32) अधिभार के लिए कॉल के बाद इस अधिभार का उपयोग करना चाहिए। यह पाठ्यक्रम के लिए है। क्या आपको लगता है कि यह नोट प्रक्रिया समाप्त करने के लिए इंतजार नहीं करता है कि इसके लक्षण क्या हैं शुक्रवार, फरवरी 20, 2009 8:13 PM यकीन नहीं है कि यह हाल ही में बदल गया है, लेकिन वापस दिन में आवेदन पर खिड़की मोबाइल कभी नहीं वास्तव में बंद जब आप उन्हें बंद करने के लिए एक्स हिट, वे सिर्फ कम से कम और पृष्ठभूमि में चलते रहना होगा (यह एक बग नहीं था, यह एक विशेषता थी, क्योंकि अगली बार जब आप ऐप शुरू करते हैं तो यह वास्तव में तेजी से शुरू होगा, हाँ मुझे पता है, पागल लेकिन सच है) इसलिए ऐसा क्यों हो सकता है कि WaitForExit अजीब व्यवहार कर रहा है और ऐप स्टार्टअप के बजाय बाहर निकलने के लिए इंतजार कर रहा है। लेकिन फिर यह सिर्फ विंडोज़ मोबाइल के प्राचीन संस्करणों के ज्ञानदंड पर आधारित अटकलें हैं। शुक्रवार, 20 फरवरी, 2009 11:03 पीएम आईडी इस सवाल को ऊपर दबाने की तरह। आईएम पर विंडोज़ मोबाइल 6 मानक और आईएम एक ब्राउज़र उदाहरण अंडे की कोशिश कर रहा है। आईडी उपयोगकर्ता तक ब्राउज़र बंद होने तक इंतजार करना पसंद करता है। लेकिन WaitForExit बहुत तेज रिटर्न देता है। यहां कोड है: प्रोसेस पी न्यू प्रोसेस () p. StartInfo. Arguments quotexample-sitequot p. StartInfo. Verb quotOpenquot p. StartInfo. UseShellExecute false p. StartInfo. FileName quotIExplore. exequot. p.start () p. WaitForExit () संदेश बॉक्स. सामने (अब अब ब्राउज़र बंद होना चाहिए) आशा की गई रिसेट को प्राप्त करने का सही तरीका क्या होना चाहिए सोमवार, 08 जून, 2009 10:45 PM कहाँ प्रतीक है प्रतीक। एलेक्स बी मंगलवार, 09 जून, 2009 9:58 PM मैं इसी समस्या को देख रहा हूं, लेकिन एक्सपी पर। मुझे लगता है कि सबूत किसी भी डीबगर (जैसा कि मैं देख रहा हूँ) में देखा जा सकता है या बुधवार, 2 सितंबर, 2009 8:35 पर किसी भी कन्सोल एप्लिकेशन में (जरूरी नहीं कि मोबाइल पर) सिवाय इसके कि आप न तो प्रक्रिया वस्तु प्राप्त करें जो आप कर सकते हैं उपयोग। यदि आप मेरी प्रक्रिया को नई प्रक्रिया के रूप में देखते हैं () myProc प्रक्रिया। प्रारंभ (quotiexplorequot, quotfinance. yahooqhpsquot प्रतीक) myProc. WaitForExit () यह अभी भी तुरंत वापस आता है बुधवार, 02 सितंबर, 2009 8:48 PM आप समस्या है कि आप आई एक्सप्लोर. एक्सए की कोई नई शुरुआत नहीं कर रहे हैं। आप बस मौजूदा प्रक्रिया पर एक नई विंडो बना रहे हैं। मेरा अनुमान है, iexplore. exe प्रारंभ होता है, पिछले उदाहरण को देखता है और पिछले उदाहरण के साथ संचार करता है ताकि वह नई विंडो को खोल सके, और फिर इस आवृत्ति को आपने तुरंत निकाला। इसलिए व्यवहार सही है और उम्मीद की जानी चाहिए। blog. voidnish बुधवार, 02 सितंबर, 2009 8:52 PM माइक्रोसॉफ्ट एमएसडीएन वेब साइट की आपकी राय को समझने के लिए एक ऑनलाइन सर्वेक्षण आयोजित कर रहा है। यदि आप भाग लेना चुनते हैं, तो ऑनलाइन सर्वेक्षण आपको प्रस्तुत किया जाएगा जब आप एमएसडीएन वेब साइट छोड़ देंगे। क्या आप भागीदारी करना चाहेंगे

No comments:

Post a Comment