ठीक है तो मैं System.Timers.Timer
का उपयोग कर रहा हूं .Net 4 के साथ सी #।मैं ऑब्जेक्ट को टाइमर ईवेंट में कैसे पास करूं?
var timer = new Timer {Interval = 123};
मैं अपने टाइमर बीता ईवेंट हैंडलर तो जैसे एक विधि में बताया है:
timer.Elapsed += MyElapsedMethod;
और मेरे विधि इस प्रकार है:
मैं इतनी तरह मेरे टाइमर वस्तु है
static void MyElapsedMethod(object sender, ElapsedEventArgs e)
{
Console.WriteLine("Foo Bar");
}
मैं इस विधि में एक स्ट्रिंग पास करना चाहता हूं, मैं यह कैसे कर सकता हूं?
धन्यवाद
वास्तव में आप अभी भी कुछ वैश्विक चर पढ़ रहे हैं (हाँ, यह स्थानीय हो सकता है, लेकिन इसका कोई मतलब नहीं है)। इवेंट हैंडलर को अज्ञात फ़ंक्शन के साथ बदल दिया गया है। यह 'टाइमर। हटाया गया + = (एस, ई) => कंसोल। राइटलाइन (द स्ट्रिंग); 'यहां तक कि छोटा, लेकिन वही विचार। –
मैंने सोचा कि इवेंटहाउंडर्स इनलाइन असाइन करना निराश है क्योंकि उन्हें बाद में रिलीज़ नहीं किया जा सकता है? –