实现ASP程序执行时间统计类的代码
网络编程 2021-07-05 10:58www.168986.cn编程入门
第一次写ASP类,实现功能:分段统计程序执行时间,输出统计表等.
Class ClsProcessTimeRecorder
'程序作者:明月星光
'作者主页:http://.5iya./blog
'http://.kuozhanming.
'ASP程序代码执行时间统计类
Private Inti,IntNonceTime,IntDecimal
Private IntStartTime,IntEndTime,IntNow,IntNonce
Private StrInterval,StrEvent,StrTime,StrStatisticLog,StrFormatInterval
Private ArrEvent,ArrTime
Private Sub Class_Initialize
StrInterval = "|" '默认分隔符
IntDecimal = 4 '小数点后位数
StrEvent = ""
StrTime = ""
StrFormatInterval = "<br />" & vbCrLf
IntStartTime = Timer
IntNow = IntStartTime
IntNonce = IntStartTime
End Sub
Public Sub Record(StrEventName)
StrEvent = StrEvent & StrInterval & Replace(StrEventName,StrInterval,"")
StrTime = StrTime & StrInterval & FormatNumber(Timer-IntNow,IntDecimal,True,False,True)
IntNow = Timer
End Sub
Public Property Let Format(StrFormatType)
If LCase(Trim(StrFormatType)) = "html" Then
StrFormatInterval = "<br />" & vbCrLf
Else
StrFormatInterval = vbCrLf
End If
End Property
Public Function Statistic
If InStr(StrEvent,StrInterval) > 0 Then
IntEndTime = Timer
ArrEvent = Split(StrEvent,StrInterval)
ArrTime = Split(StrTime,StrInterval)
StrStatisticLog = StrStatisticLog & "Process Time Record" & StrFormatInterval
StrStatisticLog = StrStatisticLog & "--------------------------------------" & StrFormatInterval
For Inti = 1 To UBound(ArrEvent)
StrStatisticLog = StrStatisticLog & ArrEvent(Inti) & " : " & ArrTime(Inti) & " s" & StrFormatInterval
Next
StrStatisticLog = StrStatisticLog & "--------------------------------------" & StrFormatInterval
StrStatisticLog = StrStatisticLog & "Total : " & FormatNumber(IntEndTime-IntStartTime,IntDecimal,True,False,True) & " s"
Statistic = StrStatisticLog
Else
Statistic = "No Record"
End If
End Function
Public Function Nonce
IntNonceTime = FormatNumber(Timer-IntNonce,IntDecimal,True,False,True)
IntNonce = Timer
Nonce = IntNonceTime
End Function
Public Function Total
Total = FormatNumber(Timer-IntStartTime,IntDecimal,True,False,True)
End Function
End Class
类属性:
1.Format
输出时是否带HTML换行标签
-html:输出HTML换行标签和文本换行符(默认)
-text:仅输出文本换行符
类方法:
1.Record("Code Name")
统计自上一次调用Record方法至现在的时间(第一次调用时统计声明类时至调用时时间),在Statistic中输出
类函数:(即时返回信息)
1.Nonce
输出自上一次调用nonce函数至现在的时间(第一次调用时统计声明类时至调用时时间)
2.Total
输出声明类到现在总时间
3.Statistic
输出所有Record统计信息和总程序时间
实例代码:
Dim objRecord,i,k,j,x
Set objRecord = New ClsProcessTimeRecorder
objRecord.Format = "html"
For i = 1 To 100000
x = 2 + 2
Next
Call objRecord.Record("加法")
For j = 1 To 100000
x = 2 2
Next
Call objRecord.Record("乘法")
For k = 1 To 100000
x = 2 ^ 2
Next
Call objRecord.Record("开方")
Response.Write objRecord.Statistic
输出:
Process Time Record
--------------------------------------
加法 : 0.0625 s
乘法 : 0.0469 s
开方 : 0.1094 s
--------------------------------------
Total : 0.2188 s
代码如下:
Class ClsProcessTimeRecorder
'程序作者:明月星光
'作者主页:http://.5iya./blog
'http://.kuozhanming.
'ASP程序代码执行时间统计类
Private Inti,IntNonceTime,IntDecimal
Private IntStartTime,IntEndTime,IntNow,IntNonce
Private StrInterval,StrEvent,StrTime,StrStatisticLog,StrFormatInterval
Private ArrEvent,ArrTime
Private Sub Class_Initialize
StrInterval = "|" '默认分隔符
IntDecimal = 4 '小数点后位数
StrEvent = ""
StrTime = ""
StrFormatInterval = "<br />" & vbCrLf
IntStartTime = Timer
IntNow = IntStartTime
IntNonce = IntStartTime
End Sub
Public Sub Record(StrEventName)
StrEvent = StrEvent & StrInterval & Replace(StrEventName,StrInterval,"")
StrTime = StrTime & StrInterval & FormatNumber(Timer-IntNow,IntDecimal,True,False,True)
IntNow = Timer
End Sub
Public Property Let Format(StrFormatType)
If LCase(Trim(StrFormatType)) = "html" Then
StrFormatInterval = "<br />" & vbCrLf
Else
StrFormatInterval = vbCrLf
End If
End Property
Public Function Statistic
If InStr(StrEvent,StrInterval) > 0 Then
IntEndTime = Timer
ArrEvent = Split(StrEvent,StrInterval)
ArrTime = Split(StrTime,StrInterval)
StrStatisticLog = StrStatisticLog & "Process Time Record" & StrFormatInterval
StrStatisticLog = StrStatisticLog & "--------------------------------------" & StrFormatInterval
For Inti = 1 To UBound(ArrEvent)
StrStatisticLog = StrStatisticLog & ArrEvent(Inti) & " : " & ArrTime(Inti) & " s" & StrFormatInterval
Next
StrStatisticLog = StrStatisticLog & "--------------------------------------" & StrFormatInterval
StrStatisticLog = StrStatisticLog & "Total : " & FormatNumber(IntEndTime-IntStartTime,IntDecimal,True,False,True) & " s"
Statistic = StrStatisticLog
Else
Statistic = "No Record"
End If
End Function
Public Function Nonce
IntNonceTime = FormatNumber(Timer-IntNonce,IntDecimal,True,False,True)
IntNonce = Timer
Nonce = IntNonceTime
End Function
Public Function Total
Total = FormatNumber(Timer-IntStartTime,IntDecimal,True,False,True)
End Function
End Class
类属性:
1.Format
输出时是否带HTML换行标签
-html:输出HTML换行标签和文本换行符(默认)
-text:仅输出文本换行符
类方法:
1.Record("Code Name")
统计自上一次调用Record方法至现在的时间(第一次调用时统计声明类时至调用时时间),在Statistic中输出
类函数:(即时返回信息)
1.Nonce
输出自上一次调用nonce函数至现在的时间(第一次调用时统计声明类时至调用时时间)
2.Total
输出声明类到现在总时间
3.Statistic
输出所有Record统计信息和总程序时间
实例代码:
代码如下:
Dim objRecord,i,k,j,x
Set objRecord = New ClsProcessTimeRecorder
objRecord.Format = "html"
For i = 1 To 100000
x = 2 + 2
Next
Call objRecord.Record("加法")
For j = 1 To 100000
x = 2 2
Next
Call objRecord.Record("乘法")
For k = 1 To 100000
x = 2 ^ 2
Next
Call objRecord.Record("开方")
Response.Write objRecord.Statistic
输出:
Process Time Record
--------------------------------------
加法 : 0.0625 s
乘法 : 0.0469 s
开方 : 0.1094 s
--------------------------------------
Total : 0.2188 s
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程