多语言展示
当前在线:548今日阅读:103今日分享:49

VB6源码实现超高精度计时器(精确到微秒)

vb高精度计时器(精确到微秒)VB系统自带的TIMER,精度很差的,GETTICKCOUNT也不怎么样。还是用用这个吧,针对CPU时钟来计算的,主要是用到这个WINDOWS API,QueryPerformanceFrequency
工具/原料

VB6

方法/步骤
1

界面如下

2

主窗体代码Option ExplicitPrivate Sub Form_Load()初始化微秒级计时器End SubPrivate Sub Command1_Click()开始计时End SubPrivate Sub Command2_Click()显示用时微秒数End Sub

3

模块代码Option Explicit Private Declare Function QueryPerformanceFrequency Lib 'kernel32' (lpFrequency As Currency) As LongPublic Declare Function QueryPerformanceCounter Lib 'kernel32' (lpPerformanceCount As Currency) As LongPublic 每毫秒处理次数 As Double, 每秒处理次数 As CurrencyPublic CPUv1 As Currency, CPUv2 As CurrencyPublic CPUv3 As Currency, CPUv4 As CurrencyPublic 已过时间 As Currency '几毫秒,后面有4位数Public V1 As Currency, V2 As Currency Sub 初始化微秒级计时器()'得到每秒的CPU运算次数     If QueryPerformanceFrequency(每秒处理次数) Then '得到每秒的CPU运算次数        每毫秒处理次数 = 每秒处理次数 / 1000     Else        MsgBox '不支持高精度计数器!'    End IfEnd SubSub 开始计时()    QueryPerformanceCounter CPUv1End SubSub 显示用时微秒数()        QueryPerformanceCounter CPUv2        已过时间 = (CPUv2 - CPUv1) * 1000 * 1000# / 每秒处理次数        MsgBox '已过时间=' & 已过时间 & '微秒'End Sub

推荐信息