my $start_time = [Time::HiRes::gettimeofday()];
my $diff = Time::HiRes::tv_interval($start_time);
print "\n\n$diff\n";
उत्तर
संभवतः। "बेहतर" से आपका क्या मतलब है इस पर निर्भर करता है।
यदि आप कार्यक्षमता के मामले में "बेहतर" समाधान मांग रहे हैं, तो यह बहुत अधिक है।
आप एक "बेहतर" अंकन की "कम अजीब" अर्थ में के लिए पूछ रहे हैं, तो जानते हैं कि, अदिश संदर्भ में, Time::HiRes::gettimeofday()
चल सेकंड अवधि के बाद वापस आ जाएगी (आंशिक हिस्सा माइक्रोसेकंड का प्रतिनिधित्व करने के साथ), बस Time::HiRes::time()
की तरह (जो मानक time()
समारोह के लिए एक अच्छा ड्रॉप-में प्रतिस्थापन है।)
my $start = Time::HiRes::gettimeofday();
...
my $end = Time::HiRes::gettimeofday();
printf("%.2f\n", $end - $start);
या:
use Time::HiRes qw(time);
my $start = time();
...
my $end = time();
printf("%.2f\n", $end - $start);
यह बहुत अधिक है - जो आपको उच्च रिज़ॉल्यूशन समाप्त कर देगा। बेशक, कोई भी सिस्टम घड़ी के साथ गड़बड़ नहीं करता है।
आप क्या कर रहे हैं पर निर्भर करता है करते हुए। यदि आप दीवार घड़ी के समय को मापना चाहते हैं (वास्तविक समय की मात्रा जो समाप्त हो गई है) तो आप अधिक बेहतर नहीं हो सकते हैं। यदि आप यह मापना चाहते हैं कि कंप्यूटर कितना समय से कुछ कर रहा है तो आप times
फ़ंक्शन या time
कमांड को देखना चाहेंगे। times
पर्ल में फ़ंक्शन आपके कोड में इस प्रक्रिया के लिए वर्तमान संचित समय की एक सूची और आपके द्वारा उपयोग किए जा रहे किसी भी मॉड्यूल का कोड, सिस्टम कॉल में यह प्रक्रिया, इस प्रक्रिया के बच्चों को उपयोगकर्ता कोड में, और इस प्रक्रिया के सभी बच्चों की एक सूची देता है सिस्टम कॉल में
#!/usr/bin/perl
use strict;
use warnings;
use Time::HiRes;
my $start_time = [Time::HiRes::gettimeofday()];
.
.
.
my ($user, $system, $child_user, $child_system) = times;
print "wall clock time was ", Time::HiRes::tv_interval($start_time), "\n",
"user time for $$ was $user\n",
"system time for $$ was $system\n",
"user time for all children was $child_user\n",
"system time for all children was $child_system\n";
यूनिक्स में time
कमांड कार्य में समान है। आप इस
time ./script.pl
की तरह एक आदेश चला और यह इस
real 0m0.692s
user 0m0.019s
sys 0m0.109s
जहां वास्तविक दीवार घड़ी समय और उपयोगकर्ता और सिस ऊपर उपयोगकर्ता और सिस्टम के रूप में ही कर रहे हैं की तरह कुछ आउटपुट।
time
आदेश एक मानव का उपयोग करने के लिए आसान है, लेकिन times
समारोह आप अधिक जानकारी देता है और एक कंप्यूटर प्रोग्राम में फिट करने के लिए आसान है (प्लस यह जबकि एक कार्यक्रम अभी भी चल रहा है परिणामों के उत्पादन को लाभ मिलता है)।
ओह, मैं $^T
का उल्लेख करना भूल गया। यह चर अवधि के बाद सेकंड में कार्यक्रम की शुरुआत समय रखती है, इसलिए यदि आप केवल कुछ सेकंड के एक विवरण के स्तर को के बारे में परवाह तुम सिर्फ अपने कार्यक्रम के शीर्ष के निकट कह सकते हैं
END { print "The program ran for ", time() - $^T, " seconds\n" }
।
यह सेवाकालीन समय, एक दूसरे के विवरण का स्तर के लिए उपयोगी है:
शुरू में ...
$debugtimer = time;
$debugstr = "";
... कहीं भी और हर जगह आप की तरह ...
kerchunk("message") # message is short description of location in code
... कार्यक्रम के अंत ...
print "timings: $debugstr";
... और अपने बाद के चरणों के साथ:
क्या अर्थ मेंsub kerchunk
{
my ($msg) = shift;
my $pertock = time;
my $kch = abs($debugtimer - $pertock);
$debugstr .= "Elapsed at $msg: $kch<br>\n";
}
- 1. विलुप्त होने का समय
- 2. आईओएस में वास्तविक समय और दिनांक निर्धारित करने का कोई तरीका है (डिवाइस का समय नहीं)
- 3. क्या दिन का समय निकालने का कोई बेहतर तरीका है?
- 4. क्या पीओडी की तुलना में पर्ल कोड दस्तावेज करने का कोई बेहतर तरीका नहीं है?
- 5. क्या पर्ल में संदर्भ से पास करने का कोई बेहतर तरीका है?
- 6. क्या UITableViewCell के लिए सही आकार निर्धारित करने का कोई बेहतर तरीका है?
- 7. एसक्यूएल डीबग करने का कोई बेहतर तरीका है?
- 8. क्या वेबव्यू रीफ्रेश करने का कोई बेहतर तरीका है?
- 9. । ऐसा करने का एक बेहतर तरीका है?
- 10. क्या कोई क्लाइंट वेब पेज पर खर्च करने की अवधि निर्धारित करने का कोई तरीका है
- 11. क्या पर्ल नियमित अभिव्यक्ति का मिलान करने की संख्या का मूल्यांकन करने का कोई तरीका है?
- 12. पर्ल में, क्या स्टैस बांधने का कोई तरीका है?
- 13. क्या ग्रहण समय निर्धारित करने के लिए एक्लिप्स में कोई तरीका है?
- 14. क्या $ का मूल्य निर्धारित करने का कोई तरीका है? रूबी में एक नकली में?
- 15. क्या सभी समय बहिष्कृत करने का कोई तरीका है?
- 16. क्या पर्ल में ट्रेसिंग चालू करने का कोई तरीका है (bash -x के बराबर)?
- 17. पर्ल स्ट्रिंग से विशिष्ट वर्णों को हटाने का बेहतर तरीका
- 18. जावा में दो स्ट्रिंग सेट को गठबंधन करने का कोई बेहतर तरीका है?
- 19. यह निर्धारित करने का कोई तरीका है कि कोई तत्व लपेटा गया है या नहीं?
- 20. क्या लिनक्स में मुफ्त वीडियो रैम की मात्रा निर्धारित करने का कोई तरीका है?
- 21. क्या कोई ऐसा करने का कोई तरीका है जब पर्ल थ्रेड अपना काम पूरा करता है?
- 22. क्या पर्ल में यादृच्छिक फ़ाइल उत्पन्न करने का कोई और अधिक प्रभावी तरीका है?
- 23. क्या आधी रात को खोजने का कोई बेहतर तरीका है?
- 24. इंटरफ़ेस विरासत/पदानुक्रम .Net में - क्या कोई बेहतर तरीका है?
- 25. क्या LINQ का उपयोग करके एक शब्दकोश को एकत्रित करने का कोई बेहतर तरीका है?
- 26. पर्ल में दिनांक अंकगणित करने का अनुशंसित तरीका क्या है?
- 27. क्या यह लिखने का कोई बेहतर तरीका है?
- 28. क्या "रेक मार्ग" को बेहतर बनाने का कोई तरीका है?
- 29. पर्ल में वर्तमान में चल रहे प्रोग्राम को पुनरारंभ करने का कोई तरीका है?
- 30. क्या कोई .NET थ्रेड समाप्त होने पर निर्धारित करने का कोई तरीका है?
बेहतर? – ysth