RT。
我这里用程序生成出TIMER用INDEX区分每个的事件。
用了Public Sub SleepitB(ByVal lngMillisecond As Long, UserId)
Dim lngStartTime As Long, lngProcTime As Long
Dim wMsg As Msg
lngStartTime = timeGetTime()
Randomize
lngMillisecond = Int(lngMillisecond) + Int(Rnd * 150)
Do
GetMessage wMsg, 0&, 0, 0
TranslateMessage wMsg
DispatchMessage wMsg
lngProcTime = timeGetTime - lngStartTime Loop While lngProcTime < lngMillisecond
End Sub做延时,所有TIMER都可以正常工作。互不干扰。但是在TIMER的TIMER事件中调用了基它函数。里面如果有大量循环的话。所有TIMER都会停止。等待这个循环结事才会运行。有什么办法。能让所有的TIMER无论调用。还是执行什么。都不干扰呢。。我本想用多线程来做。但是 如果用多线程循环操作,就像TIMER这样。。而又不会假死?
我这里用程序生成出TIMER用INDEX区分每个的事件。
用了Public Sub SleepitB(ByVal lngMillisecond As Long, UserId)
Dim lngStartTime As Long, lngProcTime As Long
Dim wMsg As Msg
lngStartTime = timeGetTime()
Randomize
lngMillisecond = Int(lngMillisecond) + Int(Rnd * 150)
Do
GetMessage wMsg, 0&, 0, 0
TranslateMessage wMsg
DispatchMessage wMsg
lngProcTime = timeGetTime - lngStartTime Loop While lngProcTime < lngMillisecond
End Sub做延时,所有TIMER都可以正常工作。互不干扰。但是在TIMER的TIMER事件中调用了基它函数。里面如果有大量循环的话。所有TIMER都会停止。等待这个循环结事才会运行。有什么办法。能让所有的TIMER无论调用。还是执行什么。都不干扰呢。。我本想用多线程来做。但是 如果用多线程循环操作,就像TIMER这样。。而又不会假死?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货