मैं प्रोग्राम को उस क्षण से दोहराना चाहता हूं जब तक कि यह प्रोग्राम कुछ ही सेकंड बंद न हो जाए। सी # में ऐसा करने का सबसे अच्छा तरीका क्या होगा?प्रत्येक कुछ सेकंड में एक फ़ंक्शन दोहराएं
उत्तर
टाइमर का उपयोग करें। विभिन्न बुनियादी उद्देश्यों के लिए उपयुक्त 3 मूल प्रकार हैं।
केवल एक Windows प्रपत्र अनुप्रयोग में प्रयोग करें। इस टाइमर को संदेश लूप के हिस्से के रूप में संसाधित किया जाता है, इसलिए टाइमर को उच्च लोड के तहत जमे हुए किया जा सकता है।
जब आप समक्रमिकता की जरूरत है, यह एक का उपयोग करें। इसका मतलब है कि टिक इवेंट थ्रेड पर चलाया जाएगा जिसने टाइमर शुरू किया है, जिससे आप बिना किसी परेशानी के जीयूआई ऑपरेशन कर सकते हैं।
यह सबसे उच्चस्तरीय टाइमर, जो आग एक पृष्ठभूमि धागे पर टिक्स है। यह आपको जीयूआई या मुख्य धागे को ठंडा किए बिना पृष्ठभूमि में संचालन करने देता है।
ज्यादातर मामलों के लिए, मैं System.Timers.Timer की अनुशंसा करता हूं।
timer का उपयोग करें। ध्यान रखें कि .NET कई अलग-अलग टाइमर के साथ आता है। This article मतभेदों को शामिल करता है।
MSDN पत्रिका लिंक मर चुका है। –
धन्यवाद। लिंक अपडेट किया गया। –
इस System.Timers.Timer
के लिए सबसे अच्छा काम करता
// Create a timer
myTimer = new System.Timers.Timer();
// Tell the timer what to do when it elapses
myTimer.Elapsed += new ElapsedEventHandler(myEvent);
// Set it to go off every five seconds
myTimer.Interval = 5000;
// And start it
myTimer.Enabled = true;
// Implement a call with the right signature for events going off
private void myEvent(object source, ElapsedEventArgs e) { }
जानकारी के लिए Timer Class (.NET 4.6 and 4.5) देखें
एक त्वरित प्रतिलिपि और पेस्ट कंसोल की तलाश करने वाले खोजकर्ताओं के लाभ के लिए, मैंने @IvoTops उदाहरण का उपयोग किया और यहां एक नमूना बनाया -> https://gist.github.com/HockeyJustin/1161699bd26adb5c054d। – HockeyJ
- 1. प्रत्येक एक्स सेकंड
- 2. प्रत्येक एक्स सेकंड
- 3. प्रत्येक 15 सेकंड
- 4. प्रत्येक 20 सेकंड
- 5. मैं 15 सेकंड के लिए प्रत्येक 3 सेकंड में फ़ंक्शन कैसे कॉल कर सकता हूं?
- 6. प्रत्येक कुछ सेकंड में Jquery के साथ एक सीएसएस पृष्ठभूमि छवि को कैसे लूप करें?
- 7. जावा थ्रेड प्रत्येक एक्स सेकंड
- 8. दोहराएं
- 9. दोहराएं एक टपल
- 10. दोहराएं
- 11. अपवाद पर पायथन फ़ंक्शन कॉल दोहराएं?
- 12. दोहराएं
- 13. दोहराएं
- 14. प्रत्येक फ़ंक्शन कॉल पर कुछ निष्पादित करें php
- 15. दोहराएं
- 16. दोहराएं मूल्य
- 17. Emacs - Autosave बफर प्रत्येक 5 सेकंड
- 18. एक तालिका को दोहराएं
- 19. प्रत्येक सेकेंड में कई फ़ंक्शन चलाएं, फ़ाइल
- 20. कैलेंडर ईवेंट और कुछ अंतिम गणित को दोहराएं
- 21. सेकंड में कुछ घंटे, घंटे, मिनट और सेकंड में विभाजित करें?
- 22. jQuery प्रत्येक एक्स सेकंड में ईवेंट कैसे करें?
- 23. स्कैला, एक सीमित सूची दोहराएं
- 24. कुछ सेकंड के बाद div छुपाएं
- 25. मैं कैसे रोक/कुछ ही सेकंड
- 26. @Schedule एनोटेशन हर कुछ मिनट (या सेकंड)
- 27. एंड्रॉइड में कुछ सेकंड के लिए कोड रोक कैसे है?
- 28. दोहराएं एक सरणी, एन एक बार में एक आइटम
- 29. प्लेलिस्ट में एकल गीत दोहराएं
- 30. Django - एक फॉर्म में एक फॉर्म फ़ील्ड एन बार दोहराएं
बस एक जोड़ा - वास्तव में इस से अधिक वास्तव में है - उदाहरण के लिए, 'डिस्पैचर टिमर' (डब्ल्यूपीएफ/सिल्वरलाइट), साथ ही उपकरण जैसे अन्य टाइमर भी हैं। –
यह भी ध्यान दें कि System.Timers.Timer की विलम्बित घटना यूआई थ्रेड पर आग लगती है यदि आप सिंक्रनाइज़िंग ऑब्जेक्ट सेट करते हैं अन्यथा यह थ्रेडपूल थ्रेड पर आग लगती है। –
ध्यान देने योग्य बात यह है कि यदि आप विश्वसनीयता चाहते हैं तो इनमें से कोई भी काम 100% समय पर नहीं, विशेष रूप से भारी भार के तहत सिस्टम पर। –