وظائف التنفيذ: إحصائيات مجزأة لوقت تنفيذ البرنامج، ومخرجات الجداول الإحصائية، وما إلى ذلك.
كود مصدر الفئة:
رمز البرنامج
فئة ccClsProcessTimeRecorder
"مؤلف البرنامج: Mingyue Xingguang
الصفحة الرئيسية للمؤلف: http://www.5iya.com/blog
http://www.kuozhanming.com
'فئة إحصائيات وقت تنفيذ كود برنامج ASP
Private ccInti,ccIntNonceTime,ccIntDecimal
ccIntStartTime الخاص،ccIntEndTime،ccIntNow،ccIntNonce
ccStrInterval الخاص، ccStrEvent، ccStrTime، ccStrStatisticLog، ccStrFormatInterval
ccArrEvent الخاص، ccArrTime
Private Sub Class_Initialize
ccStrInterval = "|" 'الفاصل الافتراضي
ccIntDecimal = 4 'عدد الأرقام بعد العلامة العشرية
ccStrEvent = ""
ccStrTime = ""
ccStrFormatInterval = "<br />" & vbCrLf
ccIntStartTime = Timer
ccIntNow = ccIntStartTime
ccIntNonce = ccIntStartTime
نهاية
السجل الفرعي العام الفرعي (ccStrEventName)
ccStrEvent = ccStrEvent & ccStrInterval & Replace(ccStrEventName,ccStrInterval،"")
ccStrTime = ccStrTime & ccStrInterval & FormatNumber(Timer-ccIntNow,ccIntDecimal,True,False,True)
ccIntNow = Timer
نهاية
تنسيق الملكية العامة الفرعية (ccStrFormatType)
إذا كان LCase(Trim(ccStrFormatType)) = "html" إذن
ccStrFormatInterval = "<br />" & vbCrLf
آخر
ccStrFormatInterval = vbCrLf
نهاية إذا
نهاية الملكية
الوظيفة العامة الإحصائية
إذا كان InStr(ccStrEvent,ccStrInterval) > 0 ثم
ccIntEndTime = Timer
ccArrEvent = سبليت (ccStrEvent،ccStrInterval)
ccArrTime = سبليت (ccStrTime، ccStrInterval)
ccStrStatisticLog = ccStrStatisticLog & "سجل وقت العملية" & ccStrFormatInterval
ccStrStatisticLog = ccStrStatisticLog & "----------------------------------------" & ccStrFormatInterval
بالنسبة لـ ccInti = 1 إلى UBound(ccArrEvent)
ccStrStatisticLog = ccStrStatisticLog & ccArrEvent(ccInti) & " : " & ccArrTime(ccInti) & " s" & ccStrFormatInterval
التالي
ccStrStatisticLog = ccStrStatisticLog & "----------------------------------------" & ccStrFormatInterval
ccStrStatisticLog = ccStrStatisticLog & "الإجمالي: " & FormatNumber(ccIntEndTime-ccIntStartTime,ccIntDecimal,True,False,True) & "s"
الإحصائية = ccStrStatisticLog
آخر
الإحصائية = "لا يوجد سجل"
نهاية إذا
الوظيفة النهائية
الوظيفة العامة Nonce
ccIntNonceTime = FormatNumber(Timer-ccIntNonce,ccIntDecimal,True,False,True)
ccIntNonce = Timer
Nonce = ccIntNonceTime
الوظيفة النهائية
الوظيفة العامة إجمالي
الإجمالي = FormatNumber(Timer-ccIntStartTime,ccIntDecimal,True,False,True)
نهاية الوظيفة
فئة النهاية
سمات الطبقة:
1. التنسيق
ما إذا كان سيتم تضمين علامات فواصل أسطر HTML عند الإخراج
-html: إخراج علامات أسطر HTML الجديدة وأسطر النص الجديدة (افتراضي)
-النص: طريقة فئة السطر الجديد لإخراج النص فقط
:
1. سجل ("الاسم الرمزي")
احسب الوقت منذ آخر استدعاء لأسلوب التسجيل حتى الوقت الحاضر (يحسب الاستدعاء الأول الوقت من وقت إعلان الفئة إلى وقت استدعائها)، وأخيرًا إخراج
وظيفة الفئة في الإحصائيات: (معلومات الإرجاع الفوري)
1. نونس
قم بإخراج الوقت منذ آخر مرة تم فيها استدعاء الدالة nonce حتى الوقت الحاضر (يتم حساب الوقت منذ إعلان الفئة لأول مرة حتى وقت استدعائها)
2.الإجمالي
قم بإخراج الوقت الإجمالي للإعلان عن الفصل حتى الآن
3.الإحصائيات
رمز المثال
لإخراج جميع إحصائيات التسجيل وإجمالي وقت البرنامج
:
رمز البرنامج
خافت objRecord،i،k،j،x
تعيين objRecord = ccClsProcessTimeRecorder الجديد
objRecord.Format = "html"
بالنسبة إلى i = 1 إلى 100000
س = 2 + 2
التالية
objRecord.Record("إضافة")
ل ي = 1 إلى 100000
س=2*2
التالي
استدعاء objRecord.Record("الضرب")
لـ k = 1 إلى 100000
س = 2^2
التالي
استدعاء objRecord.Record("الجذر التربيعي")
Response.Write objRecord.Statistic
الإخراج:
سجل وقت العملية
-----------------------------------------------
الإضافة: 0.0625 ثانية
الضرب: 0.0469 ثانية
الجذر التربيعي: 0.1094 ثانية
-----------------------------------------------
المجموع: 0.2188 ثانية