खोज…


वाक्य - विन्यास

  • stopWatch.Start () - स्टॉपवॉच शुरू करता है।
  • stopWatch.Stop () - स्टॉपवॉच बंद हो जाता है।
  • stopWatch.Elapsed - वर्तमान अंतराल द्वारा मापा गया कुल बीता समय हो जाता है।

टिप्पणियों

स्टॉपवॉच अक्सर समय कोड के लिए बेंचमार्किंग कार्यक्रमों में उपयोग किया जाता है और देखते हैं कि कोड के इष्टतम अलग-अलग खंडों को चलाने के लिए कैसे लेते हैं।

एक स्टॉपवॉच का एक उदाहरण बनाना

एक स्टॉपवॉच उदाहरण कुल अंतराल के साथ कई अंतरालों पर समय व्यतीत कर सकता है और सभी व्यक्तिगत अंतरालों को एक साथ जोड़ा जाता है। यह दो या अधिक घटनाओं के बीच बीता समय को मापने का एक विश्वसनीय तरीका देता है।

Stopwatch stopWatch = new Stopwatch();
stopWatch.Start();

double d = 0;
for (int i = 0; i < 1000 * 1000 * 1000; i++)
{
    d += 1;
}

stopWatch.Stop();
Console.WriteLine("Time elapsed: {0:hh\\:mm\\:ss\\.fffffff}", stopWatch.Elapsed);

Stopwach System.Diagnostics इसलिए आपको using System.Diagnostics; करने की आवश्यकता है using System.Diagnostics; आपकी फ़ाइल पर।

IsHighResolution

  • IsHighResolution संपत्ति इंगित करती है कि टाइमर उच्च-रिज़ॉल्यूशन प्रदर्शन काउंटर पर आधारित है या डेटटाइम क्लास पर आधारित है।
  • यह फ़ील्ड केवल पढ़ने के लिए है।
// Display the timer frequency and resolution.
if (Stopwatch.IsHighResolution)
{
    Console.WriteLine("Operations timed using the system's high-resolution performance counter.");
}
else 
{
    Console.WriteLine("Operations timed using the DateTime class.");
}

long frequency = Stopwatch.Frequency;
Console.WriteLine("  Timer frequency in ticks per second = {0}",
    frequency);
long nanosecPerTick = (1000L*1000L*1000L) / frequency;
Console.WriteLine("  Timer is accurate within {0} nanoseconds", 
    nanosecPerTick);
}

https://dotnetfiddle.net/ckrWUo

स्टॉपवॉच वर्ग द्वारा उपयोग किया जाने वाला टाइमर सिस्टम हार्डवेयर और ऑपरेटिंग सिस्टम पर निर्भर करता है। IsHighResolution सच है अगर स्टॉपवॉच टाइमर एक उच्च-रिज़ॉल्यूशन प्रदर्शन काउंटर पर आधारित है। अन्यथा, IsHighResolution गलत है, जो इंगित करता है कि स्टॉपवॉच टाइमर सिस्टम टाइमर पर आधारित है।

स्टॉपवॉच में टिक्स मशीन / ओएस पर निर्भर होते हैं, इस प्रकार आपको स्टॉपवॉच टिक्स के राशन को दो प्रणालियों के बीच समान होने के लिए सेकंड में कभी भी नहीं गिनना चाहिए, और संभवतः एक रिबूट के बाद भी उसी सिस्टम पर। इस प्रकार, आप कभी भी स्टॉपवॉच टिकों को डेटटाइम / टाइमस्पैन टिकों के समान अंतराल नहीं मान सकते हैं।

सिस्टम-इंडिपेंडेंट टाइम पाने के लिए, स्टॉपवॉच के एलेप्सड या एलाप्सेडमिलिसकंड प्रॉपर्टीज का इस्तेमाल करना सुनिश्चित करें, जो पहले से ही स्टॉपवॉच.फ्रीक्वेंसी (प्रति सेकंड टिक) लेते हैं।

स्टॉपवॉच को हमेशा टाइमटाइम प्रक्रियाओं के लिए डेटटाइम पर उपयोग किया जाना चाहिए क्योंकि यह अधिक हल्का होता है और डेटाइम का उपयोग करता है यदि यह उच्च-रिज़ॉल्यूशन प्रदर्शन काउंटर का उपयोग नहीं कर सकता है।

स्रोत



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow