Code: Select all
Dim As Any Ptr ptid
Dim As Double t0
Dim As Any Ptr p0 = @t0
Dim As Double t1
Dim As Single tmin = 10 '' start value
Dim As Single tmax = -10 '' start value
Sub myThread (Byval p As Any Ptr)
*Cast(Double Ptr, p) = Timer
End Sub
Do
ptid = Threadcreate(@myThread, @t1)
*Cast(Double Ptr, p0) = Timer
Threadwait(ptid)
If t1 - t0 < tmin Or t1 - t0 > tmax Then
If t1 - t0 < tmin Then
tmin = t1 - t0
End If
If t1 - t0 > tmax Then
tmax = t1 - t0
End If
Print Time,"Tmin="; tmin * 1000; " ms", "Tmax="; tmax * 1000; " ms"
End If
Loop Until Inkey <> ""
07:41:25 Tmin= 0.0873 ms Tmax= 0.0873 ms
07:41:25 Tmin= 0.0873 ms Tmax= 0.1399 ms
07:41:25 Tmin= 0.07799999 ms Tmax= 0.1399 ms
07:41:25 Tmin= 0.07799999 ms Tmax= 0.6494 ms
07:41:25 Tmin= 0.07229999 ms Tmax= 0.6494 ms
07:41:25 Tmin= 0.056 ms Tmax= 0.6494 ms
07:41:25 Tmin= 0.0557 ms Tmax= 0.6494 ms
07:41:25 Tmin= 0.0501 ms Tmax= 0.6494 ms
.....
.....
07:41:43 Tmin= 0.0106 ms Tmax= 2.1956 ms
07:42:03 Tmin= 0.0028 ms Tmax= 2.1956 ms
07:42:23 Tmin= 0.0028 ms Tmax= 3.3545 ms
07:42:51 Tmin=-0.0318 ms Tmax= 3.3545 ms
07:42:55 Tmin=-0.0498 ms Tmax= 3.3545 ms
07:44:19 Tmin=-0.0498 ms Tmax= 7.2985 ms
07:51:04 Tmin=-0.0659 ms Tmax= 7.2985 ms
07:58:26 Tmin=-0.0839 ms Tmax= 7.2985 ms